#sweet
我有 3 个与ID匹配的元素。我有这样的功能:
var element=document.querySelectorAll("#sweet");
for (var y=0; y<element.length; y++)
{
if (element[y].nodeName == "DIV")
{
element[y].innerHTML='';
var length=element[y].offsetWidth;
for (i=0; i<n; i++) {
console.log(i);
}
/////////////////////////
var resizeTimer = 0;
function doResize()
{
if (resizeTimer)
clearTimeout(resizeTimer);
resizeTimer = setTimeout(function() {rainbow(n, color);}, 0);
}
doResize();
////////////////////////
}
else if (element[y].nodeName == "SPAN")
{
console.log("span");
}
}
但是有问题。span
它在控制台中无限打印单词。但它必须打印 2 次,因为我有 1 个带有 ID 的 div 元素#sweet
和 2 个带有 ID 的 span 元素#sweet
。这个问题是什么原因造成的?也许,是因为我有settimeout功能,但是我需要这个功能,我不想删除它,有其他解决方法吗?