仅当窗口滚动位置等于0时才运行jquery代码

时间:2014-10-29 13:43:51

标签: jquery if-statement conditional-statements scrolltop scroll-position

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

当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),我想这是假设检查页面还没有滚动,但是我做错了...... < / p>

这是一个jsfiddle:http://jsfiddle.net/uynrhr1c/

任何人都可以帮我这个吗?

非常感谢

1 个答案:

答案 0 :(得分: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);
 });

<强> Working Demo