scopesessions.org/js/custom.js
2015-02-13 18:09:23 +01:00

81 lines
1.5 KiB
JavaScript

var scrolling = false;
var navigatorOpen = false;
var topButtonVisible = true;
$(document).ready(function(){
$(function(){
$.scrollIt();
});
$(".navigator-toggle").click(function() {
if (navigatorOpen){
closeTopMenu();
}else{
openTopMenu();
}
navigatorOpen = !navigatorOpen;
});
$(".topic").click(function() {
closeTopMenu();
});
function openTopMenu(){
if (!scrolling && !navigatorOpen){
scrolling = true;
$(".navigator").slideDown( "slow", function() {
scrolling = false;
navigatorOpen = true;
});
}
}
function closeTopMenu(){
if (!scrolling && navigatorOpen){
scrolling = true;
$('.navigator').slideUp( "slow", function() {
scrolling = false;
navigatorOpen = false;
});
}
}
function showTopButton(){
console.log('showTopButton');
if (!topButtonVisible){
$('.top-button').show( "slow", function() {
topButtonVisible = true;
});
}
}
function hideTopButton(){
console.log('hideTopButton');
if (topButtonVisible){
$('.top-button').hide( "slow", function() {
topButtonVisible = false;
});
}
}
var timeout = null;
var navbarHeight = $('.navbar').height();
$(window).scroll(function () {
if (!timeout) {
timeout = setTimeout(function () {
clearTimeout(timeout);
timeout = null;
if ($(window).scrollTop() >= navbarHeight) {
closeTopMenu();
showTopButton();
}else{
hideTopButton();
}
}, 250);
}
});
});