Team:NYMU-Taipei/menu.js
From 2014.igem.org
(Difference between revisions)
m |
m |
||
Line 2: | Line 2: | ||
$('#menu > ul > li') | $('#menu > ul > li') | ||
.on('mouseover', function(){ | .on('mouseover', function(){ | ||
- | |||
clearTimeout($.data(this,'timer')); | clearTimeout($.data(this,'timer')); | ||
$(this).find('ul').stop(true,true).slideDown(200); | $(this).find('ul').stop(true,true).slideDown(200); | ||
+ | if($(this).hasClass('now')) return ; | ||
$(this).find('a > span').stop(true,true).animate({opacity: '1'}, 300); | $(this).find('a > span').stop(true,true).animate({opacity: '1'}, 300); | ||
}) | }) | ||
.on('mouseout', function(){ | .on('mouseout', function(){ | ||
- | |||
$.data(this,'timer', setTimeout($.proxy(function() { | $.data(this,'timer', setTimeout($.proxy(function() { | ||
$(this).find('ul').stop(true,true).slideUp(200); | $(this).find('ul').stop(true,true).slideUp(200); | ||
}, this), 100)); | }, this), 100)); | ||
+ | if($(this).hasClass('now')) return ; | ||
$(this).find('a > span').stop(true,true).animate({opacity: '0'}, 700); | $(this).find('a > span').stop(true,true).animate({opacity: '0'}, 700); | ||
Revision as of 15:16, 7 June 2014
$( document ).ready(function() {
$('#menu > ul > li') .on('mouseover', function(){ clearTimeout($.data(this,'timer')); $(this).find('ul').stop(true,true).slideDown(200); if($(this).hasClass('now')) return ; $(this).find('a > span').stop(true,true).animate({opacity: '1'}, 300); }) .on('mouseout', function(){ $.data(this,'timer', setTimeout($.proxy(function() { $(this).find('ul').stop(true,true).slideUp(200); }, this), 100)); if($(this).hasClass('now')) return ; $(this).find('a > span').stop(true,true).animate({opacity: '0'}, 700); }) .click( function(){ $('#menu > ul > li').removeClass('now'); $(this).addClass('now'); $(this).find('a > span').stop(true,true).animate({opacity: '1'}, 300); $('#menu > ul > li').not(this).find('a > span').stop(true,true).animate({opacity: '0'}, 300); }); $(window).scroll(function (event){ var y = $(this).scrollTop(); if(y>240){ $('#menu').css({ marginTop:0, }); } else{ $('#menu').css({ marginTop:240-y, }); } }); $(window).bind('popstate', function() { //override back button to get the ajax content without page reload var toUrl=location.pathname; $.get( toUrl , function(data) { $('#main-content').html($(data).find('#main-content').html()); }); }); $('#menu a').click(function(e){ //to get the ajax content and display in div 'main-content' e.preventDefault(); var toUrl=$(this).attr('href'); var location='https://2014.igem.org'+toUrl; $.get( toUrl , function(data) { $('#main-content').html($(data).find('#main-content').html()); }); if(toUrl!=window.location.href){ //to change the browser URL to the given link location window.history.pushState({path:toUrl},,toUrl); } });
});