jQuery滚动绑定不起作用

时间:2012-02-01 09:21:09

标签: jquery html

我有以下html页面。滚动鼠标时为什么警报不起作用?

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html lang="en">
     <head>
     <script src="http://code.jquery.com/jquery-latest.js"></script>


      <script>
      $(window).scroll(function(){
                alert("scrolling");
            });
      </script>
     </head>
     <body>

     </body>
    </html>

编辑:当页面右侧有滚动条并且滚动页面向下移动时,它可以正常工作。但我想让它在空白页面上工作。例如。

EDIT2:我已将document.body更改为窗口,但遇到同样的问题。

EDIT3:所以,我的结果是我想捕捉鼠标滚轮事件

4 个答案:

答案 0 :(得分:4)

这不是身体而是窗户 但是我会在文件准备好之后把它放进去 这是一个有效的代码:

    $(document).ready( function ()
    {
        console.log('ready');
        $(window).scroll( function ()
        {
            console.log('scroll');
        });
    });

回答你的编辑3
要捕获鼠标滚轮事件,请使用jquery mousewheel_plugin查看此example
所以你的代码将是

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="jQuery_mousewheel_plugin.js"></script>
<script>

    var intOverallDelta = 0;

    $(document).ready( function ()
    {
        console.log('ready');
        $(document.body).mousewheel(function(objEvent, intDelta)
        {
            if (intDelta > 0)
            {
                intOverallDelta++;
                console.log('up - (' + intOverallDelta + ')');
            }
            else if (intDelta < 0)
            {
                intOverallDelta--;
                console.log('down - (' +  intOverallDelta + ')');
            }
        });
    });

</script>

答案 1 :(得分:2)

在窗口试试

$(window).scroll(function(){
    alert("scrolling");
});

阅读手册:http://api.jquery.com/scroll/

答案 2 :(得分:1)

您的选择器错误,document.body将无法匹配任何内容......

答案 3 :(得分:0)

使用相同的示例http://api.jquery.com/scroll/

查看jquery文档上的.scroll()