Difference between revisions of "Template:Bielefeld-CeBiTec/js/stylesheet"
Line 23: | Line 23: | ||
$('body').scrollspy({ target: '#pagenav' }); | $('body').scrollspy({ target: '#pagenav' }); | ||
+ | |||
+ | $(function(){ | ||
+ | var menuActive = false, | ||
+ | touched = false, | ||
+ | $nav = $('.nav'); | ||
+ | |||
+ | function removeActive(callback){ | ||
+ | $nav.find('.MenuActive').removeClass('MenuActive'); | ||
+ | callback(); | ||
+ | } | ||
+ | |||
+ | function newActive($this,menu){ | ||
+ | removeActive(function(){ | ||
+ | $this.next().addClass('MenuActive').queue(function(){ | ||
+ | if(menu){ | ||
+ | menuActive = true; | ||
+ | touched = false; | ||
+ | } else { | ||
+ | touched = true; | ||
+ | } | ||
+ | }).dequeue(); | ||
+ | }); | ||
+ | } | ||
+ | |||
+ | $nav.on({ | ||
+ | touchstart:function(e){ | ||
+ | e.stopPropagation(); | ||
+ | newActive($(this),touched); | ||
+ | }, | ||
+ | mouseenter:function(){ | ||
+ | newActive($(this),true); | ||
+ | }, | ||
+ | click:function(e){ | ||
+ | e.preventDefault(); | ||
+ | |||
+ | if(menuActive){ | ||
+ | $(this).trigger('trueClick',e.target); | ||
+ | } | ||
+ | }, | ||
+ | trueClick:function(e,$target){ | ||
+ | $(this).parents('.nav').trigger('mouseleave'); | ||
+ | window.location.href = $target; | ||
+ | } | ||
+ | },'li .has_children').on('mouseleave',function(){ | ||
+ | removeActive(function(){ | ||
+ | menuActive = false; | ||
+ | touched = false; | ||
+ | }); | ||
+ | }); | ||
+ | |||
+ | $('html').on('touchstart',function(e){ | ||
+ | if(menuActive){ | ||
+ | $nav.trigger('mouseleave'); | ||
+ | } | ||
+ | }); | ||
+ | }); |
Revision as of 22:28, 15 September 2015
$(document).ready(function () { var shiftWindow = function() { scrollBy(0, -80) }; window.addEventListener("hashchange", shiftWindow); function load() { if (window.location.hash) shiftWindow(); } load(); });
$(document).ready(function(){
$("#myNav").affix({ offset: { top: 195 } });
});
(document).ready(function() { $("#logo-cf").hover(function(){ $("#logo-cf img").animate({ opacity: 0 }, 'slow'); }, function() { $("#logo-cf img").animate({ opacity: 1 }, 'slow'); }); });
$('body').scrollspy({ target: '#pagenav' });
$(function(){
var menuActive = false, touched = false, $nav = $('.nav');
function removeActive(callback){ $nav.find('.MenuActive').removeClass('MenuActive'); callback(); }
function newActive($this,menu){ removeActive(function(){ $this.next().addClass('MenuActive').queue(function(){ if(menu){ menuActive = true; touched = false; } else { touched = true; } }).dequeue(); }); }
$nav.on({ touchstart:function(e){ e.stopPropagation(); newActive($(this),touched); }, mouseenter:function(){ newActive($(this),true); }, click:function(e){ e.preventDefault();
if(menuActive){ $(this).trigger('trueClick',e.target); } }, trueClick:function(e,$target){ $(this).parents('.nav').trigger('mouseleave'); window.location.href = $target; } },'li .has_children').on('mouseleave',function(){ removeActive(function(){ menuActive = false; touched = false; }); });
$('html').on('touchstart',function(e){ if(menuActive){ $nav.trigger('mouseleave'); } });
});