PageSourceSearch

https://hcmussh.edu.vn/home/js/main.js

js hcmussh.edu.vn collected 2026-10-02 10:06:27 UTC 7,314 bytes, 347 lines download raw bytes

1AOS.init({
2	duration: 800,
3	easing: 'slide'
4});
5
6(function ($) {
7
8	"use strict";
9
10	var isMobile = {
11		Android: function () {
12			return navigator.userAgent.match(/Android/i);
13		},
14		BlackBerry: function () {
15			return navigator.userAgent.match(/BlackBerry/i);
16		},
17		iOS: function () {
18			return navigator.userAgent.match(/iPhone|iPad|iPod/i);
19		},
20		Opera: function () {
21			return navigator.userAgent.match(/Opera Mini/i);
22		},
23		Windows: function () {
24			return navigator.userAgent.match(/IEMobile/i);
25		},
26		any: function () {
27			return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
28		}
29	};
30
31
32	$(window).stellar({
33		responsive: true,
34		parallaxBackgrounds: true,
35		parallaxElements: true,
36		horizontalScrolling: false,
37		hideDistantElements: false,
38		scrollProperty: 'scroll'
39	});
40
41
42	var fullHeight = function () {
43
44		$('.js-fullheight').css('height', $(window).height());
45		$(window).resize(function () {
46			$('.js-fullheight').css('height', $(window).height());
47		});
48
49	};
50	fullHeight();
51
52	// loader
53	var loader = function () {
54		setTimeout(function () {
55			if ($('#ftco-loader').length > 0) {
56				$('#ftco-loader').removeClass('show');
57			}
58		}, 1);
59	};
60	loader();
61
62	// Scrollax
63	$.Scrollax();
64
65	var carousel = function () {
66		$('.destination-slider').owlCarousel({
67			autoplay: true,
68			loop: true,
69			items: 1,
70			margin: 30,
71			stagePadding: 0,
72			nav: true,
73			dots: true,
74			navText: ['<span class="ion-ios-arrow-back">', '<span class="ion-ios-arrow-forward">'],
75			responsive: {
76				0: {
77					items: 1
78				},
79				600: {
80					items: 2
81				},
82				1000: {
83					items: 4
84				}
85			}
86		});
87		$('.carousel-testimony').owlCarousel({
88			autoplay: true,
89			loop: true,
90			items: 1,
91			margin: 0,
92			stagePadding: 0,
93			nav: true,
94			navText: ['<span class="ion-ios-arrow-back">', '<span class="ion-ios-arrow-forward">'],
95			responsive: {
96				0: {
97					items: 1
98				},
99				600: {
100					items: 1
101				},
102				1000: {
103					items: 1
104				}
105			}
106		});
107
108		$('.single-slider').owlCarousel({
109			animateOut: 'fadeOut',
110			animateIn: 'fadeIn',
111			autoplay: true,
112			loop: true,
113			items: 1,
114			margin: 0,
115			stagePadding: 0,
116			nav: true,
117			dots: true,
118			navText: ['<span class="ion-ios-arrow-back">', '<span class="ion-ios-arrow-forward">'],
119			responsive: {
120				0: {
121					items: 1
122				},
123				600: {
124					items: 1
125				},
126				1000: {
127					items: 1
128				}
129			}
130		});
131
132	};
133	carousel();
134
135	$('nav .dropdown').hover(function () {
136		var $this = $(this);
137		// 	 timer;
138		// clearTimeout(timer);
139		$this.addClass('show');
140		$this.find('> a').attr('aria-expanded', true);
141		// $this.find('.dropdown-menu').addClass('animated-fast fadeInUp show');
142		$this.find('.dropdown-menu').addClass('show');
143	}, function () {
144		var $this = $(this);
145		// timer;
146		// timer = setTimeout(function(){
147		$this.removeClass('show');
148		$this.find('> a').attr('aria-expanded', false);
149		// $this.find('.dropdown-menu').removeClass('animated-fast fadeInUp show');
150		$this.find('.dropdown-menu').removeClass('show');
151		// }, 100);
152	});
153
154
155	$('#dropdown04').on('show.bs.dropdown', function () {
156	});
157
158	// scroll
159	var scrollWindow = function () {
160		$(window).scroll(function () {
161			var $w = $(this),
162				st = $w.scrollTop(),
163				navbar = $('.ftco_navbar'),
164				sd = $('.js-scroll-wrap');
165
166			if (st > 150) {
167				if (!navbar.hasClass('scrolled')) {
168					navbar.addClass('scrolled');
169				}
170			}
171			if (st < 150) {
172				if (navbar.hasClass('scrolled')) {
173					navbar.removeClass('scrolled sleep');
174				}
175			}
176			if (st > 350) {
177				if (!navbar.hasClass('awake')) {
178					navbar.addClass('awake');
179				}
180
181				if (sd.length > 0) {
182					sd.addClass('sleep');
183				}
184			}
185			if (st < 350) {
186				if (navbar.hasClass('awake')) {
187					navbar.removeClass('awake');
188					navbar.addClass('sleep');
189				}
190				if (sd.length > 0) {
191					sd.removeClass('sleep');
192				}
193			}
194		});
195	};
196	scrollWindow();
197
198	var isMobile = {
199		Android: function () {
200			return navigator.userAgent.match(/Android/i);
201		},
202		BlackBerry: function () {
203			return navigator.userAgent.match(/BlackBerry/i);
204		},
205		iOS: function () {
206			return navigator.userAgent.match(/iPhone|iPad|iPod/i);
207		},
208		Opera: function () {
209			return navigator.userAgent.match(/Opera Mini/i);
210		},
211		Windows: function () {
212			return navigator.userAgent.match(/IEMobile/i);
213		},
214		any: function () {
215			return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows());
216		}
217	};
218
219
220	var counter = function () {
221
222		$('#section-counter').waypoint(function (direction) {
223
224			if (direction === 'down' && !$(this.element).hasClass('ftco-animated')) {
225
226				var comma_separator_number_step = $.animateNumber.numberStepFactories.separator(',')
227				$('.number').each(function () {
228					var $this = $(this),
229						num = $this.data('number');
230					$this.animateNumber(
231						{
232							number: num,
233							numberStep: comma_separator_number_step
234						}, 7000
235					);
236				});
237
238			}
239
240		}, { offset: '95%' });
241
242	}
243	counter();
244
245	var contentWayPoint = function () {
246		var i = 0;
247		$('.ftco-animate').waypoint(function (direction) {
248
249			if (direction === 'down' && !$(this.element).hasClass('ftco-animated')) {
250
251				i++;
252
253				$(this.element).addClass('item-animate');
254				setTimeout(function () {
255
256					$('body .ftco-animate.item-animate').each(function (k) {
257						var el = $(this);
258						setTimeout(function () {
259							var effect = el.data('animate-effect');
260							if (effect === 'fadeIn') {
261								el.addClass('fadeIn ftco-animated');
262							} else if (effect === 'fadeInLeft') {
263								el.addClass('fadeInLeft ftco-animated');
264							} else if (effect === 'fadeInRight') {
265								el.addClass('fadeInRight ftco-animated');
266							} else {
267								el.addClass('fadeInUp ftco-animated');
268							}
269							el.removeClass('item-animate');
270						}, k * 50, 'easeInOutExpo');
271					});
272
273				}, 100);
274
275			}
276
277		}, { offset: '95%' });
278	};
279	contentWayPoint();
280
281
282	// navigation
283	var OnePageNav = function () {
284		$(".smoothscroll[href^='#'], #ftco-nav ul li a[href^='#']").on('click', function (e) {
285			e.preventDefault();
286
287			var hash = this.hash,
288				navToggler = $('.navbar-toggler');
289			$('html, body').animate({
290				scrollTop: $(hash).offset().top
291			}, 700, 'easeInOutExpo', function () {
292				window.location.hash = hash;
293			});
294
295
296			if (navToggler.is(':visible')) {
297				navToggler.click();
298			}
299		});
300		$('body').on('activate.bs.scrollspy', function () {
301		})
302	};
303	OnePageNav();
304
305
306	// magnific popup
307	$('.image-popup').magnificPopup({
308		type: 'image',
309		closeOnContentClick: true,
310		closeBtnInside: false,
311		fixedContentPos: true,
312		mainClass: 'mfp-no-margins mfp-with-zoom', // class to remove default margin from left and right side
313		gallery: {
314			enabled: true,
315			navigateByImgClick: true,
316			preload: [0, 1] // Will preload 0 - before current, and 1 after the current image
317		},
318		image: {
319			verticalFit: true
320		},
321		zoom: {
322			enabled: true,
323			duration: 300 // don't foget to change the duration also in CSS
324		}
325	});
326
327	$('.popup-youtube, .popup-vimeo, .popup-gmaps').magnificPopup({
328		disableOn: 700,
329		type: 'iframe',
330		mainClass: 'mfp-fade',
331		removalDelay: 160,
332		preloader: false,
333
334		fixedContentPos: false
335	});
336
337
338	$('#checkin_date, #checkout_date').datepicker({
339		'format': 'm/d/yyyy',
340		'autoclose': true
341	});
342
343
344
345
346})(jQuery);
347

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.