div中只有一个节点-HTML、JavaScript
我看到了与div中只有一个节点-HTML、JavaScript,javascript,html,image,Javascript,Html,Image,我看到了与.appendChild()和.innerHTML不同的东西,但是要使用Image()JavaScript对象 我有10个变量,img[1,2,3,4…10],是用JavaScript(new Image())创建的,可以预加载,现在我只想一次将它插入到我的div中 innerHTML返回类似于HTMLImageObject的内容,并且appendChild()无法按我的要求工作 到目前为止,我的解决方案是: document.getElementById("teste").remov
.appendChild()
和.innerHTML
不同的东西,但是要使用Image()
JavaScript对象
我有10个变量,img[1,2,3,4…10]
,是用JavaScript(new Image()
)创建的,可以预加载,现在我只想一次将它插入到我的div中
innerHTML
返回类似于HTMLImageObject
的内容,并且appendChild()
无法按我的要求工作
到目前为止,我的解决方案是:
document.getElementById("teste").removeChild(document.getElementById("teste").firstChild);
document.getElementById("teste").appendChild(img1);
有人有更好的想法吗?你的方法很可靠,但也许像这样更容易阅读。。另外,lastChild的性能优势也很小
var ele = document.getElementById('teste');
while(ele.lastChild) {
ele.removeChild(ele.lastChild)
}
ele.appendChild(img1);
您还可以在某处保留对元素的引用
var ele = document.getElementById('teste'), img = ele.lastChild;
ele.removeChild(img);
ele.append(img1);
如果jQuery可用,可以使用
$('#teste').clear().append(img1);
根据您使用的浏览器,您可能还可以访问HTML5选择器API,即使没有jquery,jquery可能是document.element方法的替代方法
document.querySelector('#tests').first();
如果您不想
appendChild
使用replaceChild
。例如:
div.replaceChild(imgs[i], div.firstChild);
演示:你是什么意思:
顺便说一句,除非你想被偷或死,否则不要来巴西参加世界杯;-)来自一位巴西人的好建议
欢迎来到Stack Overflow。请参阅,以获取有关如何提出好问题的建议。在您的情况下,我们需要更多关于appendChild
如何工作的详细信息。您应该能够附加一个新图像();我以前做过。@ScottMermelstein我认为他的方法有效,他只是在寻找更好的方法solution@AshishMishra请忽略这一点,这是无关紧要的,是从question@ZachSaucier是的,我只是在寻找更好的解决方案谢谢!我想要的是替换儿童。谢谢,querySelector更好。