Javascript 如何将jQuery live绑定到整个窗口?

Javascript 如何将jQuery live绑定到整个窗口?,javascript,jquery,html,Javascript,Jquery,Html,每当鼠标移动到浏览器窗口上的任何位置时,我都会尝试调用一些函数。目前,我正在使用: $('html').live('mousemove', function(e) { ... } 一旦页面向下滚动,这似乎就不起作用了 是否有方法将mousemove事件绑定到整个窗口 $(window).live('mousemove', function(e) { ... } 结果一事无成 -- 编辑: 我的鼠标功能代码如下: function mouseEvents() { // se

每当鼠标移动到浏览器窗口上的任何位置时,我都会尝试调用一些函数。目前,我正在使用:

$('html').live('mousemove', function(e) { ... }
一旦页面向下滚动,这似乎就不起作用了

是否有方法将
mousemove
事件绑定到整个窗口

$(window).live('mousemove', function(e) { ... }
结果一事无成

--

编辑:

我的鼠标功能代码如下:

function mouseEvents() {



       // set up mouse movement
        $(window).on('mousemove', function(e) {
            if (window.imgLoaded) {
                var x = e.pageX/$(window).width()*504;
                var y = e.pageY/$(window).height()*504;
                console.log(y);
                drawKaleidoscope(window.ctx, window.img, x / 2, y / 2);
            }
        });
    }
$(document).bind(“mousemove”,函数(e){…})

也可以在卷轴上触发(移动鼠标滚轮不会触发鼠标移动)

$(document).bind(“mousemove mouseweel DOMMouseScroll”,函数(e){…})

其中,
DOMMouseScroll
是特定于firefox的mousewheel事件

请注意:

.live已弃用:请参见此处:(类别已弃用)

您可以尝试以下方法:

$(document).on('mousemove', function(e) { ... }

**or**

$(document).live('mousemove', function(e) { ... }

你为什么要用。活?Live适用于尚未创建的元素(或动态添加和删除的元素)

窗口
文档
从一开始就存在,所以只需使用
$(document).bind


如果您使用的是jQuery 1.7+,请使用
$(文档)。在

上,不推荐使用live
。。。在这种情况下,您不需要它,因为
窗口
(或
文档
)总是可用的。只需正常绑定事件处理程序。好的-感谢大家的及时响应。我已经更新到jQuery 1.7x,尝试了
$(窗口)。绑定(…)
$(文档)。绑定(…)
$(文档)。在(…)
上,所有这些都提供了类似的结果,但我仍然遇到了相同的问题,在向下滚动文档时没有调用鼠标操作。我有很多绝对定位的div,我不知道为什么它在滚动到页面底部时不调用:<您可以看到,由于某种原因,向下滚动时不会调用该操作…@waffl-ah您希望在滚动时也触发它吗?我将编辑我的回答我不希望滚动成为触发器,我只希望
mousemove
以同样的方式影响万花筒,无论您在文档中的何处。然而,由于某种原因,当向下滚动时,它似乎并没有“触发”。@waffl在视频中,当你向下滚动后移动鼠标时,它显然在移动。如果它移动不正确,您必须在自定义逻辑中考虑它,但它确实在移动。我认为
$(document).live
不起作用。。。我认为它只适用于选择器。嗯,你说得对!真的,兄弟!Lmao似乎是下面的一个演示@Esailija@FelixKlingjQuery在这里是宽容的,它以某种方式调用
.on
,并使用空字符串作为选择器(因此它相当于
$(document).on(“mousemove”,“”,fn)
),它被忽略,就好像它不存在一样。我还没有使用不支持
.on
的jQuery进行测试,但我怀疑它在那里会起作用。@Esailija++1,因为您得到了一些不同的东西<代码>:)
谢谢,在聊天中,Esailija发现这是一个webkit错误,并提交了一个。临时修复方法是使用jQuery重新声明
html
元素的高度:
$(“html”).height($(document.height())