gpt4 book ai didi

javascript - 将 HTML 元素转换为 'Node' 类型

转载 作者:行者123 更新时间:2023-11-30 11:41:35 25 4
gpt4 key购买 nike

我正在处理一个 HTML 项目。基本上将 HTML 节点保存到 JavaScript 的对象中,以将它们附加到元素中。这是我的 HTML、JavaScript 和错误。

HTML

...
<div id="holder"></div>
...

JavaScript

var _handler = {};
var _holder = document.getElementById('holder');
var some_example = [{"id":"item_1"}, {"id":"item_2"}]

function create(tag, id) { /*Created a DOMObject */
var elem = document.createElement(tag);
_handler[id] = elem;
}
function spawn() {
for (var k in _handler) {
_holder.appendChild(_handler[k]); //<----- Here's the error occurring, given at very last.
}
}
function main() { /* Main function */
for (var x=0;x < some_example.length;x++) {
create('div', some_example.id);
}
spawn();
}

对于那个复杂的小脚本感到抱歉。无论如何,所有的工作都很顺利,但是 appendChild 执行下面给出的 bobo:

错误

Uncaught TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.

希望你们有任何想法。谢谢。

最佳答案

确保在 for 循环中使用 hasOwnProperty

for (var k in _handler) {
if (_handler.hasOwnProperty(k)) {
_holder.appendChild(_handler[k]);
}
}

关于javascript - 将 HTML 元素转换为 'Node' 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42446025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com