0

我试图找出在本机 javascript 中拖动是如何工作的。研究后我做了一个简单的javascript函数。

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

它在所有浏览器上都能正常工作,除了 IE!

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

我什至无法提供一步一步的用例,因为它是随机发生的。

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

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

4

3 回答 3

1

通常document.addEventListener("mousemove", eventHandler)使用 . 添加和删除事件document.removeEventListener("mousemove", eventHandler)
第一个参数是事件的类型,第二个参数是处理程序的名称。
不幸的是,据我所知,不可能删除匿名处理函数或计算处理函数。所以这不起作用

document.addEventListener("mousemove", function() { eventHandler(); });
document.removeEventListener("mousemove", function() { eventHandler(); });

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

您必须在document.removeEventListener.

于 2012-08-22T20:31:45.857 回答
1

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

于 2012-08-22T20:40:41.297 回答
0

我必须设置onselectstart="return false;" 在 IE 的 body 标签上。我认为这是造成问题的原因。虽然我还是没有头绪。。

于 2012-08-22T22:09:06.473 回答