PageSourceSearch

https://jetsmart.com/cl/es/minisitios/_common/js/navbar.js

js jetsmart.com collected 2026-10-02 03:06:43 UTC 4,141 bytes, 84 lines download raw bytes

1let multipleColumnDropdown = function() {
2	$('li.has-mega-menu').each(function(idx, val) {
3        var set = 3, //Number of links to display in each column
4            buffer = [],
5            dropdown = $('.dropdown-menu', this),
6            children = dropdown.find(".dropdown-item"),
7            cols = Math.ceil(children.length / set),
8            col_class = 'col-6 col-md-' + (cols >= 5 ? '2' : (cols == 4 ? '3' : (cols == 3 ? '4' : 'x'))),
9            container_class = 'px-0 container container-' + (cols == 2 ? 'sm' : (cols == 3 ? 'md' : (cols == 4 ? 'lg' : (cols >= 5 ? 'xl' : 'x'))));
10			
11			children.remove();
12			
13        for (var i = 0; i < cols; i++) {
14            buffer.push('<div class="' + col_class + '">');
15            children.slice(i * set, (i + 1) * set).each(function() {
16                buffer.push($(this).prop('outerHTML'));
17            });
18            buffer.push('</div>');
19        }
20
21        dropdown.append('<div class="' + container_class + '"><div class="row">' + buffer.join('\n') + '</div></div>');
22    });
23};
24let checkNavbarCollapseIsShow = function() {
25	return $('.collapse.navbar-collapse').hasClass("show") && $(window).width() < 991;
26};
27let bootstrapDropdownSmooth = function() {
28	$('.dropdown').on('show.bs.dropdown', function(e) {
29		$(this).find('.dropdown-toggle').first().addClass("show");
30        $(this).find('.dropdown-menu').first().stop(true, true).slideDown(300);
31    });
32
33    $('.dropdown').on('hide.bs.dropdown', function(e) {
34		$(this).find('.dropdown-toggle').first().removeClass("show");
35        $(this).find('.dropdown-menu').first().stop(true, true).slideUp(200);
36    });
37};
38let bootstrapNavbarToggle = function() {
39	$('#navbarNav').on('show.bs.collapse', function () {
40	  if($(".navbar-toggler[data-target='#navbarNav']").length > 0 && $(".navbar-toggler[data-target='#navbarNav'] > span > small").length > 0) $(".navbar-toggler[data-target='#navbarNav'] > span > small").html("CERRAR");
41	})
42	
43	$('#navbarNav').on('hide.bs.collapse', function () {
44	  if($(".navbar-toggler[data-target='#navbarNav']").length > 0 && $(".navbar-toggler[data-target='#navbarNav'] > span > small").length > 0) $(".navbar-toggler[data-target='#navbarNav'] > span > small").html("MENU");
45	})
46}
47let hiddenAllDropdown = function() {
48	if($('.dropdown-menu.show').length > 0)$('.dropdown.show [data-toggle="dropdown"]').dropdown('toggle');
49};
50let scrollDownUpNavbar = function() {
51	var prevScrollpos = window.pageYOffset;
52	window.onscroll = function() {
53		var currentScrollPos = window.pageYOffset;
54		var header_nav_height = (document.querySelector("header.main-header").offsetHeight - 2);
55		if (prevScrollpos > currentScrollPos) {
56			if(currentScrollPos < header_nav_height * 2) document.querySelector("header.main-header").classList.remove("visibility-changed");
57            if(document.querySelector("header.main-header.scroll-friendly")) document.querySelector("header.main-header.scroll-friendly").style.top = "0";
58		} else if(currentScrollPos > header_nav_height * 2 && !checkNavbarCollapseIsShow()) {
59			hiddenAllDropdown();
60			if(currentScrollPos > header_nav_height * 2) document.querySelector("header.main-header").classList.add("visibility-changed");
61            if(document.querySelector("header.main-header.scroll-friendly")) document.querySelector("header.main-header.scroll-friendly").style.top = (header_nav_height * -1) + "px";
62		}
63		prevScrollpos = currentScrollPos;
64	}
65};
66let spaceContentNavbar = function() {
67	var header_nav_height = document.querySelector("header.main-header").offsetHeight;
68		$('header.main-header').next().css('margin-top', header_nav_height + "px");
69		//document.querySelector("body").style.paddingTop = header_nav_height + "px";
70};
71jQuery(document).ready(function() {
72	if(document.querySelectorAll("header.main-header.fixed-top").length > 0) {
73        multipleColumnDropdown();
74        bootstrapDropdownSmooth();
75        spaceContentNavbar();
76        scrollDownUpNavbar();
77        bootstrapNavbarToggle();
78    }
79});
80jQuery(window).resize(function(){
81    if(document.querySelectorAll("header.main-header.fixed-top").length > 0) {
82        spaceContentNavbar();
83    }
84});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.