2013-03-27 90 views
-2

我有一个页面,顶部有两个部分,顶部是jQuery手风琴菜单,当我点击手风琴菜单页面滚动到顶部,我需要页面应该保持在同一个位置,这样我才能正确地看到jQuery手风琴菜单。我有一个页面,顶部有两个地图,底部有手风琴菜单,当我点击手风琴时,页面滚动到顶部

反正有防止这种情况吗?所以当我点击菜单时,页面应该保持在浏览器的相同位置?

menu.find('ul li > a').bind('click',function(event,ui){ 
    /*var ahref = $(event.currentTarget).attr('href'); 
    if(ahref!='#'){ 
     window.location.href = ahref; 
    }else{*/ 

     var currentlink=$(event.currentTarget); 
     if (currentlink.parent().find('ul.active').size()==1) 
     { 
      currentlink.parent().find('ul.active').slideUp('medium',function(){ 
       currentlink.parent().find('ul.active').removeClass('active'); 
      }); 
     } 
     else if (menu.find('ul li ul.active').size()==0) 
     { 
      show(currentlink); 
     } 
     else 
     { 
      menu.find('ul li ul.active').slideUp('medium',function(){ 
       menu.find('ul li ul').removeClass('active'); 
       show(currentlink); 
      }); 
     } 
    /* }*/ 
}); 

滚动手风琴菜单

回答

1

您需要在您的点击事件功能的末尾添加return falseevent.preventDefault()否则浏览器将按照<a href="#">链接你点击通过附加#页面URI其指示浏览器找到命名为锚在页面上。由于您没有提供锚定名称(例如http://www.url.com/page#而不是http://www.url.com/page#anchorname),因此浏览器跳转到页面顶部。

例如

menu.find('ul li > a').bind('click',function(event, ui){ 
    // your code 

    // choose one of the following lines 
    return false 
    event.preventDefault() 
}); 
相关问题