为什么不能删除EventListener

时间:2016-12-15 02:41:37

标签: javascript html

code link

我想在mouseup事件触发时删除mouseover事件,但为什么不能revomeEventListener以及如何修复它,看起来这是我在javascript中的弱点。

1 个答案:

答案 0 :(得分:0)

在fnDown中,您将事件侦听器设置为 dragBox ,但之后您尝试将其从 dragArea 中删除。您需要将侦听器附加到 dragArea ,如果您打算将其从中删除的话。此功能按预期工作。

    Drag.prototype.fnDown = function (e) {
        this.diff.x = e.clientX - this.dragBox.offsetLeft
        this.diff.y = e.clientY - this.dragBox.offsetTop
        this.dragArea.addEventListener('mousemove', this.fnMove,false)
    }

工作示例: http://jsbin.com/dugoxeziho/1/edit?html,output