2
我已閱讀所有關於此主題的問題和解答。這應該是一個簡單的任務,但我無法讓它工作。如何禁用點擊菜單項上的JQuery航點?
Waypoint的JQuery版本可以在頂級菜單項上,在一個頁面上正常工作。我想在點擊這些菜單項時禁用它,然後恢復它。我還沒有得到恢復部分。當我調用禁用函數時,我得到一個「TypeError:e.disable不是函數」。註釋行顯示我曾嘗試包括禁止()函數的所有方式:
var waypoints = $('section.waypoint').waypoint({
handler:function(){
var hash = '#'+this.element.id;
$('#menu-main-menu li.active').removeClass('active');
$('#menu-main-menu li a[href='+ hash +']').parent('li').addClass('active');
window.console.log($(window).scrollTop());
if($(window).scrollTop() < 500){
$('#menu-main-menu li.active').removeClass('active');
}
//$('#menu-main-menu li a').on('click', function(){
//this.disableAll();
//});
},
offset: '30%',
continuous: false
});
//waypoints.disable();
//點擊菜單項鍊接,動畫
$('.jumbotron a, #menu-main-menu li a').on('click', function(e) {
e.preventDefault();
//$(waypoints).disable();
//$(waypoints).disableAll();
//waypoints.disable();
//waypoints.disableAll();
$('#menu-main-menu li.active').removeClass('active');
if (location.pathname.replace(/^\//,'') === this.pathname.replace(/^\//,'') && location.hostname === this.hostname) {
var $target = $(this.hash);
$target = $target.length && $target || $('[name="' + this.hash.slice(1) +'"]');
if ($target.length) {
var targetOffset = $target.offset().top - 45;
$('html, body').animate({scrollTop: targetOffset}, 1000);
}
}
});
我認識到,航點是一個數組,所以有嘗試disableAll()和迭代。沒有骰子。在此先感謝您的幫助!
問題可能是由JQuery版本文檔和Noframework文檔之間的混淆造成的。 –