2012-03-01 21 views
0

我有一個簡單的點擊和顯示,點擊並隱藏邊欄菜單,但是當我點擊它時,頁面會停留在頁面的頂部。無論如何要防止這一點?所以當我點擊菜單時,頁面應該保持在瀏覽器的相同位置?jQuery點擊將我帶到頁面頂部。但我想呆在同一個地方

(function ($) { 
$.fn.SidebarMenu = function() { 
    return this.each(function() { 
     var menu = $(this); 
     menu.find('ul li ul.active').slideDown('medium'); 
     menu.find('ul li > a').bind('click', function (event) { 
      var ahref = $(event.currentTarget).attr('href'); 
      if (ahref != '#') { 
       window.location.href = ahref; 
      } else { 
       var currentlink = $(event.currentTarget); 
       if (currentlink.parent("li").find('ul.active').size() == 1) { 
        currentlink.parent("li").find('ul.active').slideUp('medium', function() { 
         currentlink.parent("li").find('ul.active').removeClass('active'); 
         currentlink.removeClass('sidebar_container_content_li_arrowdown'); 
         currentlink.addClass('sidebar_container_content_li_arrowup'); 
        }); 
       } 
       else { 
        show(currentlink); 
       } 
      } 
     }); 
     function show(currentlink) { 
      currentlink.parent().find('ul').addClass('active'); 
      currentlink.removeClass('sidebar_container_content_li_arrowup'); 
      currentlink.addClass('sidebar_container_content_li_arrowdown'); 
      currentlink.parent().find('ul').slideDown('medium'); 
     } 
    }); 
} 
})(jQuery); 

謝謝。

回答

0

添加event.preventDefault()您單擊處理程序。

menu.find('ul li > a').bind('click', function (event) { 
    event.preventDefault(); 
    var ahref = $(event.currentTarget).attr('href'); 
相關問題