我正在尝试使用 If 语句编写一段代码,该代码仅在窗口的滚动位置为 0 时才有效。一旦有人滚动页面,代码就不再起作用。
当鼠标进入我的 div .slideshow_2 时,页面应从 75 像素开始滚动,当鼠标离开时,页面应从 75 像素向后滚动...但前提是我的窗口滚动位置为零。
我在定义窗口滚动位置、检查它是否为 0 以及使用 if 条件时遇到了麻烦。
这是我的代码:
if ($(window).scrollTop() == 0){
$('.slideshow_2').mouseenter(function(){
$("html , body").animate({ scrollTop: 75 }, 500)
});
$('.slideshow_2').mouseleave(function(){
$("html , body").animate({ scrollTop: -75 }, 500);
});
}
我的条件是:if ($(window).scrollTop() == 0),我想这是为了检查页面是否还没有滚动,但是我做错了......
这是一个jsfiddle:http://jsfiddle.net/uynrhr1c/
谁能帮我解决这个问题吗?
非常感谢
最佳答案
您需要在处理程序中添加条件:
$('.slideshow_2').mouseenter(function(){
if($(window).scrollTop() == 0){
$("html , body").animate({ scrollTop: 75 }, 500)
}
});
$('.slideshow_2').mouseleave(function(){
if($(window).scrollTop() == 0)
$("html , body").animate({ scrollTop: -75 }, 500);
});
<强> Working Demo
关于jquery - 仅当窗口滚动位置等于 0 时才运行 jquery 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26631970/