2

我正在尝试使用 If 语句编写一个仅在窗口的滚动位置为 0 时才有效的代码。一旦有人滚动页面,代码就不应该再工作了。

当 mouseenter 我的 div .slideshow_2 时,页面应该从 75px 滚动,当 mouseleave 时,从 75px 向后滚动......但前提是我的窗口滚动位置为零。

我很难定义窗口滚动位置,检查它是否为 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/

有人可以帮我吗?

多谢

4

1 回答 1

2

您需要在处理程序中添加条件:

 $('.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);
 });

工作演示

于 2014-10-29T13:45:11.193 回答