8
末在幾乎所有的實例/模板腳本我能找到之前,我看到event.preventDefault();
在函數的結尾,就像這樣:event.preventDefault()永遠只是功能
$('.navbar-nav li a').bind('click', function(event) {
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top
}, 1500, 'easeInOutExpo');
event.preventDefault();
});
從我的角度來看,這個想法是「立即停止默認行爲,然後做什麼,我們必須做的」,這樣的:
$('.navbar-nav li a').bind('click', function(event) {
event.preventDefault();
var $anchor = $(this);
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top
}, 1500, 'easeInOutExpo');
});
所以我缺少什麼?
'立即停止默認behavior'活動放在在隊列中,所以這並沒有區別把它放在處理程序的頂部或底部。但請參閱TrueBlueAussie的回答,如果由於某種原因想要停止傳播,使用簡寫方式'return false;',通常將它置於底部更方便。這就是說,爲了可讀性,我總是把它放在頂端,但這是我自己的看法 –