0
如何使用Javascript删除以下事件侦听器?下面简单Javascript:如何移除eventListener?
var commentArea=$(this).parent().find('.comment_input_content')[0];
commentEditDropbox = commentArea;
commentEditDropbox.addEventListener("dragenter", dragenter, false);
commentEditDropbox.addEventListener("dragover", dragover, false);
commentEditDropbox.addEventListener("drop", drop, false);
function dragenter(e) {
e.stopPropagation();
e.preventDefault();
// $("#topic_content_input").css("cursor:copy");
}
function dragover(e) {
e.stopPropagation();
e.preventDefault();
// $("#topic_content_input").css("cursor:copy");
}
function drop(e) {
e.stopPropagation();
e.preventDefault();
// $("#topic_content_input").css("cursor:copy");
var dt = e.dataTransfer;
var files = dt.files;
var attr = $(this).attr('contenteditable');
// if contenteditable is true
if(attr){
commentEditHandleFileSelect(files);
alert("drop");
}
}
我累代码通过替换的addEventListener到removeEventlistener,但没有工作:(
var commentArea=$(this).parent().find('.comment_input_content')[0];
commentEditDropbox = commentArea;
commentEditDropbox.removeEventListener("dragenter", dragenter, false);
commentEditDropbox.removeEventListener("dragover", dragover, false);
commentEditDropbox.removeEventListener("drop", drop, false);
当我更改它时会打印错误:SyntaxError:意外的字符串文字“dragover” –
您是否有时间查看整个脚本?它是一个拖放图像处理功能。 addEventListener的问题在于它有时会多次将同一个侦听器添加到同一个对象,所以我必须将其删除。 JQuery打开和关闭方法可以帮助我从根本上解决问题,但我有问题将其切换到JQuery,它打印错误,你能帮忙吗? –
你能编辑你的问题以包含更多的代码吗? – spaniol6