File: /home/qhl5pt3kkb1d/public_html/tstp-old/js/about.js
/* JS Document */
/******************************
[Table of Contents]
1. Vars and Inits
2. Set Header
3. Init Menu
4. Init Header Search
5. Init Accordions
6. Init Video
7. Initialize Milestones
8. Init Partners Slider
******************************/
$(document).ready(function()
{
"use strict";
/*
1. Vars and Inits
*/
var header = $('.header');
var menuActive = false;
var menu = $('.menu');
var burger = $('.hamburger');
var ctrl = new ScrollMagic.Controller();
setHeader();
$(window).on('resize', function()
{
setHeader();
});
$(document).on('scroll', function()
{
setHeader();
});
initMenu();
initHeaderSearch();
initAccordions();
initVideo();
initMilestones();
initPartnersSlider();
/*
2. Set Header
*/
function setHeader()
{
if($(window).scrollTop() > 100)
{
header.addClass('scrolled');
}
else
{
header.removeClass('scrolled');
}
}
/*
3. Init Menu
*/
function initMenu()
{
if($('.menu').length)
{
var menu = $('.menu');
if($('.hamburger').length)
{
burger.on('click', function()
{
if(menuActive)
{
closeMenu();
}
else
{
openMenu();
$(document).one('click', function cls(e)
{
if($(e.target).hasClass('menu_mm'))
{
$(document).one('click', cls);
}
else
{
closeMenu();
}
});
}
});
}
}
}
function openMenu()
{
menu.addClass('active');
menuActive = true;
}
function closeMenu()
{
menu.removeClass('active');
menuActive = false;
}
/*
4. Init Header Search
*/
function initHeaderSearch()
{
if($('.search_button').length)
{
$('.search_button').on('click', function()
{
if($('.header_search_container').length)
{
$('.header_search_container').toggleClass('active');
}
});
}
}
/*
6. Init Accordions
*/
function initAccordions()
{
if($('.accordion').length)
{
var accs = $('.accordion');
accs.each(function()
{
var acc = $(this);
if(acc.hasClass('active'))
{
var panel = $(acc.next());
var panelH = panel.prop('scrollHeight') + "px";
if(panel.css('max-height') == "0px")
{
panel.css('max-height', panel.prop('scrollHeight') + "px");
}
else
{
panel.css('max-height', "0px");
}
$(window).trigger('resize.px.parallax');
}
acc.on('click', function()
{
if(acc.hasClass('active'))
{
acc.removeClass('active');
var panel = $(acc.next());
var panelH = panel.prop('scrollHeight') + "px";
if(panel.css('max-height') == "0px")
{
panel.css('max-height', panel.prop('scrollHeight') + "px");
}
else
{
panel.css('max-height', "0px");
}
$(window).trigger('resize.px.parallax');
}
else
{
acc.addClass('active');
var panel = $(acc.next());
var panelH = panel.prop('scrollHeight') + "px";
if(panel.css('max-height') == "0px")
{
panel.css('max-height', panel.prop('scrollHeight') + "px");
}
else
{
panel.css('max-height', "0px");
}
$(window).trigger('resize.px.parallax');
}
});
});
}
}
/*
6. Init Video
*/
function initVideo()
{
$(".vimeo").colorbox(
{
iframe:true,
innerWidth:640,
innerHeight:409,
maxWidth: '90%'
});
}
/*
7. Initialize Milestones
*/
function initMilestones()
{
if($('.milestone_counter').length)
{
var milestoneItems = $('.milestone_counter');
milestoneItems.each(function(i)
{
var ele = $(this);
var endValue = ele.data('end-value');
var eleValue = ele.text();
/* Use data-sign-before and data-sign-after to add signs
infront or behind the counter number */
var signBefore = "";
var signAfter = "";
if(ele.attr('data-sign-before'))
{
signBefore = ele.attr('data-sign-before');
}
if(ele.attr('data-sign-after'))
{
signAfter = ele.attr('data-sign-after');
}
var milestoneScene = new ScrollMagic.Scene({
triggerElement: this,
triggerHook: 'onEnter',
reverse:false
})
.on('start', function()
{
var counter = {value:eleValue};
var counterTween = TweenMax.to(counter, 4,
{
value: endValue,
roundProps:"value",
ease: Circ.easeOut,
onUpdate:function()
{
document.getElementsByClassName('milestone_counter')[i].innerHTML = signBefore + counter.value + signAfter;
}
});
})
.addTo(ctrl);
});
}
}
/*
8. Init Partners Slider
*/
function initPartnersSlider()
{
if($('.partners_slider').length)
{
var partnersSlider = $('.partners_slider');
partnersSlider.owlCarousel(
{
loop:true,
autoplay:true,
smartSpeed:1200,
nav:false,
dots:false,
responsive:
{
0:
{
items:1
},
480:
{
items:2
},
720:
{
items:3
},
991:
{
items:4
},
1199:
{
items:6
}
}
});
}
}
});