TypeError: $(...).addEventListener ist nicht eine Funktion
setTimeout(function() {
$.ajax({
url : "handlers/H_AnnotationHandler.php",
data : "case_id=<?=$case_id?>&plink=<?=$plink?>&mode=get",
type : "post",
dataType : "json",
success : function (response) {
if (!response.error) {
annotation_length = response.annots.length;
for (var i = 0; i < response.annots.length; i++) {
var elt = document.createElement("div");
elt.id = "runtime-overlay" + i;
elt.className = "highlight";
viewer.addOverlay({
element: elt,
location : viewer.viewport.imageToViewportRectangle(parseInt(response.annots[i].rect_x), parseInt(response.annots[i].rect_y), parseInt(response.annots[i].rect_w), parseInt(response.annots[i].rect_h))
});
$("#runtime-overlay"+i).attr("onclick", "$.clickOverlay('"+i+"')");
}
}
}
});
}, 3000);
$.clickOverlay = function(whichOverlay) {
var flag = 0;
$("#runtime-overlay"+whichOverlay).addEventListener("mousedown", function(){
flag = 0;
}, false);
$("#runtime-overlay"+whichOverlay).addEventListener("mousemove", function(){
flag = 1;
}, false);
$("#runtime-overlay"+whichOverlay).addEventListener("mouseup", function(){
if(flag === 0){
console.log("click");
}
else if(flag === 1){
console.log("drag");
}
}, false);
}
Warum bekomme ich eine Art Fehlermeldung für addeventlistener ?
Können Sie mir helfen, ich versuche zu verstehen, klicken Sie auf oder ziehen Sie.
so habe ich Hinzugefügt, dass die Funktionen in meiner click-Ereignis :
Wie unterscheiden Maus "klicken" und "ziehen"
ERROR : Uncaught TypeError: $(...).addEventListener ist nicht eine Funktion
- Sie mischen jQuery mit JavaScript, verwenden Sie entweder
on('mouseup'
oderdocument.getElementById('id').addEventListener(
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als Kommentar wies darauf hin, Sie zu benutzen versuchen, die "vanilla" javascript-Methode zum hinzufügen von ein eventlistener auf ein jQuery-Objekt.
versuchen Sie stattdessen:
addEventListener
ist die javascript-Möglichkeit, auf Ereignisse zu lauschen, aber Sie rufen es auf ein JQuery-Objekt.Geben Sie einen Blick auf
JQuery.auf()
zu verwalten, die events mit JQuery.