是否可以将以下四个匿名jquery函数转换为一个传递参数的函数?
这就是我所拥有的...
dropZone.addEventListener("dragenter", this.dragEnter, false);
dropZone.addEventListener("dragover", this.dragOver, false);
dropZone.addEventListener("dragleave", this.dragLeave, false);
dropZone.addEventListener("drop", this.dragDrop, false);
...
this.dragOver = function(ev) {
ev.stopPropagation();
ev.preventDefault();
this.className = "dragover";
}
this.dragLeave = function(ev) {
ev.stopPropagation();
ev.preventDefault();
this.className = "dragleave";
}
this.dragEnter = function(ev) {
ev.stopPropagation();
ev.preventDefault();
this.className = "dragenter";
}
this.dragDrop = function(ev) {
ev.stopPropagation();
ev.preventDefault();
this.className = "dragdrop";
}
我正在寻找功能类似于...的东西
dropZone.addEventListener("dragenter", dropEvent(this,"dragenter"), false);
dropZone.addEventListener("dragover", dropEvent(this,"dragOver"), false);
dropZone.addEventListener("dragleave", dropEvent(this,"dragLeave"), false);
dropZone.addEventListener("drop", dropEvent(this,"dragDrop"), false);
...
function dragEvent(ev, label) {
ev.stopPropagation();
ev.preventDefault();
this.className = label;
}