我想在for循环中创建多个图像。它工作正常,除了每个Image都应该得到一个dbclick eventlistener。这也不是问题。
在eventlistener中,我调用了一个函数。此函数获取一些参数(例如图像的id)。
当我开始提醒时,我总是得到相同的身份。
我的代码:
function loadImageAttribute(imageid,link) {
var doc = document.getElementById("iframe_editor").contentWindow.document;
alert(imageid); // --> Always get the last id of the last image
openWindow('windowimagechange');
}
function insertImage() {
for (var i = 0; i < list.files.length; i++) {
var file = list.files[i];
if ('name' in file) {
txt += "name: " + file.name + "<br>";
}
if ('size' in file) {
txt += "size: " + file.size + " bytes <br>";
}
document.getElementById("counterImage").value = parseInt(document.getElementById("counterImage").value)+1;
var range= sel.getRangeAt(0);myParent=document.getElementById("iframe_editor").contentWindow.document.body;
var img=document.createElement("img");
img.src = "./fileuploads/"+file.name;
img.id = "imgid"+document.getElementById("counterImage").value;
myParent.appendChild(img);
range.insertNode(img);
doc.body.appendChild(p);
img.addEventListener( 'dblclick', function(){
loadImageAttribute(img.id,'');
},img.id);
}
}
当我在调试模式中检查eventlistener时,我可以看到als eventlistener获得了正确的id。