74 lines
2.9 KiB
JavaScript
74 lines
2.9 KiB
JavaScript
// Service Item JS
|
|
(function ($) {
|
|
"use strict";
|
|
// Navbar
|
|
// browser window scroll (in pixels) after which the "menu" link is shown
|
|
var offset = 300;
|
|
|
|
var navigationContainer = $('#st-nav'),
|
|
mainNavigation = navigationContainer.find('#st-main-nav ul');
|
|
|
|
//hide or show the "menu" link
|
|
checkMenu();
|
|
$(window).scroll(function () {
|
|
checkMenu();
|
|
});
|
|
|
|
//open or close the menu clicking on the bottom "menu" link
|
|
$('.st-nav-trigger').on('click', function () {
|
|
$(this).toggleClass('menu-is-open');
|
|
//we need to remove the transitionEnd event handler (we add it when scolling up with the menu open)
|
|
mainNavigation.off('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend').toggleClass('is-visible');
|
|
|
|
});
|
|
|
|
function checkMenu() {
|
|
if ($(window).scrollTop() > offset && !navigationContainer.hasClass('is-fixed')) {
|
|
navigationContainer.addClass('is-fixed').find('.st-nav-trigger').one('webkitAnimationEnd oanimationend msAnimationEnd animationend', function () {
|
|
mainNavigation.addClass('has-transitions');
|
|
});
|
|
} else if ($(window).scrollTop() <= offset) {
|
|
//check if the menu is open when scrolling up
|
|
if (mainNavigation.hasClass('is-visible') && !$('html').hasClass('no-csstransitions')) {
|
|
//close the menu with animation
|
|
mainNavigation.addClass('is-hidden').one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function () {
|
|
//wait for the menu to be closed and do the rest
|
|
mainNavigation.removeClass('is-visible is-hidden has-transitions');
|
|
navigationContainer.removeClass('is-fixed');
|
|
$('.st-nav-trigger').removeClass('menu-is-open');
|
|
});
|
|
//check if the menu is open when scrolling up - fallback if transitions are not supported
|
|
} else if (mainNavigation.hasClass('is-visible') && $('html').hasClass('no-csstransitions')) {
|
|
mainNavigation.removeClass('is-visible has-transitions');
|
|
navigationContainer.removeClass('is-fixed');
|
|
$('.st-nav-trigger').removeClass('menu-is-open');
|
|
//scrolling up with menu closed
|
|
} else {
|
|
navigationContainer.removeClass('is-fixed');
|
|
mainNavigation.removeClass('has-transitions');
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
// WOW Init
|
|
new WOW().init();
|
|
|
|
// Typed JS
|
|
$(".skilltechtypetext").typed({
|
|
strings: sentences,
|
|
contentType: 'html',
|
|
typeSpeed: 30,
|
|
loop: false,
|
|
backDelay: 1200,
|
|
showCursor: true,
|
|
cursorChar: "|"
|
|
});
|
|
|
|
// Scroll Down
|
|
$('.arrow-down').on('click', function () {
|
|
$('html,body').animate({scrollTop: $('#service-details').offset().top}, 1000, 'swing');
|
|
});
|
|
|
|
})(jQuery);
|
|
|