Javascript 滚动窗口时,jQuery无法检查
我使用的是fullpage.js插件,当用户滚动过第一张幻灯片时,我想将菜单从页脚转换到页眉 关于这一点: 但是,全屏功能不允许我检查是否存在滚动事件 我写过这样的话:Javascript 滚动窗口时,jQuery无法检查,javascript,jquery,fullpage.js,Javascript,Jquery,Fullpage.js,我使用的是fullpage.js插件,当用户滚动过第一张幻灯片时,我想将菜单从页脚转换到页眉 关于这一点: 但是,全屏功能不允许我检查是否存在滚动事件 我写过这样的话: $(window).scroll(function(){ if ($(window).scrollTop() > $('.topDiv').position().top) { console.log('div hits top!'); } }); 检查顶部灰色div是否位于窗口顶部,但不起作用 甚至: 不
$(window).scroll(function(){
if ($(window).scrollTop() > $('.topDiv').position().top) {
console.log('div hits top!');
}
});
检查顶部灰色div是否位于窗口顶部,但不起作用
甚至:
不起作用。可能是因为这样会有帮助
$('elem').bind('DOMMouseScroll', function(e){
if(e.originalEvent.detail > 0) {
console.log('Down');
} else {
console.log('Up');
}
//prevent page fom scrolling
return false;
});
//IE, Opera, Safari
$('elem').bind('mousewheel', function(e){
if(e.originalEvent.wheelDelta < 0) {
//scroll down
console.log('Down');
} else {
console.log('Up');
}
//prevent page fom scrolling
return false;
});
$('elem').bind('DOMMouseScroll',函数(e){
如果(e.originalEvent.detail>0){
console.log('Down');
}否则{
console.log('Up');
}
//防止页面fom滚动
返回false;
});
//歌剧、狩猎
$('elem').bind('mouseweell',函数(e){
如果(e.originalEvent.wheelDelta<0){
//向下滚动
console.log('Down');
}否则{
console.log('Up');
}
//防止页面fom滚动
返回false;
});
我认为实现所需功能的最佳方法是使用fullPage.js提供的回调,而不是依赖$(window.scroll()
您可以在每个回调函数上调用一个自定义函数:
onLeave: function(index, nextIndex, direction){}
afterLoad: function(anchorLink, index){}
然后,您可以检查索引
和nextIndex
值以执行所需的逻辑
希望能有所帮助。它应该可以工作,可能会出错。打开您的控制台并检查谢谢您的回复。是的,我看到了,但是我试图在一个单独的js文件中获取索引,所以我得到了错误:“fullPage:fullPage.js只能初始化一次,而您正在多次初始化!”让我知道您是如何构造Javascript组件的。为什么不能在初始化fullPage.js的同一个javascript文件的回调中执行索引验证?
onLeave: function(index, nextIndex, direction){}
afterLoad: function(anchorLink, index){}