javascript - Javascript 动态元素创建导致 HTML 中的阴影内容
问题描述
我在 javascript 中使用以下函数在类中创建了一个类和元素,并使用 appendchild 函数将其添加到另一个类中。
function createClass(menu)
{
console.log('class entered');
var newNode = document.createElement('div');
newNode.className = 'item';
var input = document.createElement('input');
input.setAttribute("type","checkbox");
input.setAttribute("id",menu);
input.innerText=menu;
var label = document.createElement('label');
label.setAttribute("for", menu);
label.innerText=menu;
input.appendChild(label);
newNode.appendChild(input);
return newNode;
}
但是,内容不显示在 html 页面中。类已添加。当 html 的正文显示在控制台中时,该类被添加到正文中,但在内部文本之前,它显示“影子内容(用户代理)”。
如何使它们可见?
解决方案
您已经创建了新的 DOM 元素,但从未真正将它们附加到当前文档。缺少的部分是将新的 DOM 元素添加到文档中:
document.body.appendChild(createClass('hello'))
推荐阅读
- gatsby - 根据 graphql 查询结果动态设置 backgroundImage 样式属性
- python - 从二进制流中读取两个字节
- node.js - 在 laravel 应用程序中通过节点 js 发送邮件
- java - 如何让类变量返回双精度值?
- spring - 如何在全球第一个未处理的异常后立即终止 Spring Boot 应用程序
- url - 带有 url 的 Bootstrap4 树视图
- material-ui - 无法在 Stencil 项目中使用 material-ui 组件
- python - 在 bonobo 中使用 @use 装饰器
- c# - 如何在 C# 项目中加载同名的 C++ dll
- c++ - Replacement-List 宏函数 [问题]