繁体   English   中英

如何在元素内添加元素? (ES6)

[英]How do I add an element within an element? (ES6)

我正在尝试使用以下方法添加元素:

let el = `<div></div>`;
document.body.appendChild(el);

我注意到el在console.log中显示为“字符串”。 我应该通过createElement添加元素吗?

码:

let topPos = (Math.random() * 100) + '%'
let leftPos = (Math.random() * 100) + '%'
let bubbleMd = `
    <div class="bubble bubble-md"></div>
`;
let layer = document.getElementsByClassName('layer3')

layer.appendChild(bubbleMd).setAttribute(
    'style',`top: ${topPos}; left: ${leftPos};`
);

a)是的,您需要使用createElement,因为appendChild期望HTMLElement不是字符串,b)图层是节点列表,因此没有appendChild方法

所以:

let topPos = (Math.random() * 100) + '%'
let leftPos = (Math.random() * 100) + '%'
let bubbleMd = createElemnt('div');
bubbleMd.classList.add('bubble', 'bubble-md');
bubbleMd.style=`top: ${topPos}; left: ${leftPos};`;
let layer = document.getElementsByClassName('layer3')[0]; // note the [0]
layer.appendChild(bubbleMd);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM