首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >onmousemove = null在IE中不起作用

onmousemove = null在IE中不起作用
EN

Stack Overflow用户
提问于 2012-08-23 04:26:33
回答 3查看 1K关注 0票数 0

我想找出在原生javascript中拖拽是如何工作的。在研究之后,我做了一个简单的javascript函数。

http://jsfiddle.net/FKM5S/1/

它在所有浏览器上都工作得很好,除了IEs!

问题是,即使在设置了document.onmousemove = null之后,我也可以拖动元素

我甚至不能提供一步一步的用例,因为它是随机发生的。

我在google上查看了其他的js示例,他们也有同样的问题。其中之一就是http://ratfactor.com/misc/programming/simpledrag/test.html

这是IE的已知问题还是有解决方法?

EN

回答 3

Stack Overflow用户

发布于 2012-08-23 04:31:46

通常使用document.addEventListener("mousemove", eventHandler)添加事件,使用document.removeEventListener("mousemove", eventHandler)删除事件。

第一个参数是事件的类型,第二个参数是处理程序的名称。

不幸的是,据我所知,没有删除匿名处理函数或计算处理函数的可能性。所以这将不会工作:

代码语言:javascript
复制
document.addEventListener("mousemove", function() { eventHandler(); });
document.removeEventListener("mousemove", function() { eventHandler(); });

document.addEventListener("mousemove", getEventHandlerFunc());
document.removeEventListener("mousemove", getEventHandlerFunc());

您必须在document.removeEventListener中提供完全相同的函数-对象。

票数 1
EN

Stack Overflow用户

发布于 2012-08-23 04:40:41

尝试使用document.onmousemove = function(){return false;}

票数 1
EN

Stack Overflow用户

发布于 2012-08-23 06:09:06

我不得不在I的主体标记上设置onselectstart="return false;"。我认为这就是问题所在。不过我还是不知道..

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12080875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档