您好,我有一个问题,我试图抓取所有图像,以便循环浏览它们并在下面添加事件处理程序:
addEventListener('dragstart', handleDragStart, false);
addEventListener('dragenter', handleDragEnter, false);
addEventListener('dragover', handleDragOver, false);
addEventListener('dragleave', handleDragLeave, false);
我有点困惑,因为我尝试过 getelementbyid 来获取所有图像通过 AJAX 动态填充的部分区域。现在就 querySelectorAll l() 而言,似乎没有抓住任何东西。我假设我只是用错了。也许它不响应标签。但我尝试使用 getElementsByTagName,它似乎抓住了所有东西并将其放入 HTMLCollection。然而 HTML 集合的长度是 0。是否有使用 Javascript(而不是 jquery)的最佳实践方法来将这些事件处理程序附加到每个 IMG?我在这里迷失了如何抓住然后操纵它们。.length 似乎不起作用,我不习惯 HTMLCollection,这似乎是我得到的。
var imagesContainer = document.getElementById("images");
var allImages = document.querySelectorAll('#images img');
console.log(allImages);
console.log(allImages.length);
var allImages2 = imagesContainer.getElementsByTagName("img");
console.log(allImages2);
console.log(allImages2.length);