将 DOM 元素创建到集合的项目中

2023-12-29

尝试从模板创建 DOM 元素“gota”。首先我创建模板:

function htmlToElement(html) {
  var template = document.createElement('template');
  template.innerHTML = html;
  return template.content.firstChild;
}

let gota = htmlToElement('<div class="gota"><div class="gota-rastro"><div class="rastro"></div></div><div class="gota-cabeza"></div></div>');

其次,我从 CSS 类“gotea”创建集合,并迭代每个元素以附加模板:

function gotear() {
  let gotas = document.getElementsByClassName('gotea');
  for (let i = 0; i < gotas.length; i++) {
    gotas[i].appendChild(gota);
  }
}
gotear();

这只是将“gota”元素添加到集合中唯一的一个随机元素中:

如何将此模板添加到集合中的所有元素?


你只是在创造one元素。然后你使用相同的元素appendChild多次,所以你move它从一位父母到另一位父母。

您可以使用以下方式克隆元素cloneNode(true) https://developer.mozilla.org/en-US/docs/Web/API/Node/cloneNode并附加克隆:

gotas[i].appendChild(gota.cloneNode(true));

旁注:您可以使用insertAdjacentHTML https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentHTML而不是htmlToElement直接插入基于该 HTML 的元素:

function gotear() {
    let gotas = document.getElementsByClassName('gotea');
    for (let i = 0; i < gotas.length; i++) {
        gotas[i].insertAdjacentHTML(
            "beforeend",
            '<div class="gota"><div class="gota-rastro"><div class="rastro"></div></div><div class="gota-cabeza"></div></div>'
        );
    }
}
gotear();

当然,这意味着重复解析 HTML。但即使在这里没用,在其他地方也可能有用。 (还有insertAdjacentText https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentText.)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 DOM 元素创建到集合的项目中 的相关文章

  • Ajax文件上传

    我想使用 Ajax 和 php 上传文件 我有一个表格
  • Crypto-Js 库的 hmac-256 脚本返回函数结构而不是 Google Apps 脚本中的值,在外部工作正常吗?

    我正在设置一个谷歌电子表格项目来连接到我的 CryptoExchange API 但是当涉及到这个简单的 CryptoJs Hmac sha256 脚本时 它不起作用 它返回函数结构而不是值 而在外部它工作正常 看我的jsfiddle ht
  • 如何将 Django 中的数组传递给模板并在 JavaScript 中使用它

    我想将数组传递给模板 然后通过 JavaScript 使用它 In my views py I have arry1 Str 500 20 return render to response test html array1 arry1 在
  • 如何在bootstrap中默认隐藏侧边栏?

    我在这里有一个很好的参考 作为 Bootstrap 在设计 Web 表单应用程序时的侧边栏 http startbootstrap com template overviews simple sidebar http startbootst
  • Javascript 在另一个函数中检测“Shift”键按下

    我正在从 Flash 影片 使用外部接口 调用我的 html 页面中的 Javascript 函数 并且我想知道调用该函数时用户是否按下了 Shift 键 例如 如果我通过鼠标单击调用该函数 这似乎很简单 因为我可以传递事件并检查 if e
  • 使用命名的成功/错误回调在 AngularJS 中声明一个 Promise

    我正在尝试做一些与 http 服务非常相似的事情 根据我的理解 http 返回一个 Promise 对象 使用它时 语法是 http success function data success callback error function
  • Angularjs 完整日历不显示事件

    我正在用那个https github com angular ui ui calendar https github com angular ui ui calendar在 Angularjs 中使用 FullCalendar 它显示日历并
  • 游戏手柄 JavaScript 未能按预期更新

    我正在尝试让浏览器报告我的 XBOX 控制器的状态 然而 在第一次按下按钮后 它似乎变得 卡住 我究竟做错了什么
  • 带有 mkdocs 的本地 mathjax

    我想在无法访问互联网的计算机上使用 MathJax 和 Mkdocs 因此我不能只调用 Mathjax CDN Config mkdocs yml site name My Docs extra javascript javascripts
  • Firebase 身份验证在 iOS 登录时卡住,没有错误

    我已经使用电子邮件和密码设置了 firebase 身份验证登录的最基本实现 firebase auth signInWithEmailAndPassword email password then gt console log Logged
  • 自定义指令链接中的 element.replaceWith 仅在第一次调用时有效

    我是 Angularjs 的新手 不太了解幕后的情况 基本上我想创建一个 E 扭结指令 基于控制器中的数据 我动态创建html 就像整个 表 一样 以替换该指令 我的 html 文件中的指令是这样的
  • 如何使用 JavaScript 获取元素的填充值?

    我有一个textarea在我的 HTML 中 我需要获取整数或浮点形式的填充数值 以像素为单位 我如何使用 JavaScript 获取它 我没有使用 jQuery 所以我正在寻找纯 JavaScript 解决方案 这将返回padding l
  • JavaScript 中的实时摩尔斯电码转换器

    在看到谷歌关于莫尔斯电码 gmail 的愚人节笑话后 我想我应该尝试用 javascript 创建一个实时莫尔斯电码转换器 我正在使用正则表达式和替换将莫尔斯电码更改为字符 例如 replace g a replace g r 我遇到的问题
  • JavaScript 提升解释

    下面的片段有什么区别 var a 0 function b a 10 return function a b console log a gt 10 and var a 0 function b a 10 return function a
  • Javascript onload 不起作用[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • 检测浏览器选项卡是否具有焦点

    是否有可靠的跨浏览器方法来检测选项卡是否具有焦点 场景是 我们有一个定期轮询股票价格的应用程序 如果页面没有焦点 我们可以停止轮询并为每个人节省流量噪音 特别是当人们喜欢打开具有不同投资组合的多个选项卡时 Is window onblur
  • 具有固定顶部菜单的语义 UI 侧边栏

    Semantic UI 对其进行预警侧边栏页面 http semantic ui com modules sidebar html usage 当侧边栏出现时 固定位置内容可能会出现改变其位置的问题 然后它提供了该问题的两种可能的解决方案
  • p5 向量减法“sub”返回错误

    我一直在尝试将 p5 草图上传到 React 构建中 使用react p5 wrapper 我能够成功在屏幕上渲染画布 但是 某些矢量函数会导致错误 var distance this position dist ball position
  • DOM 解析器 Chrome 扩展内存泄漏

    问题 我开发了一个扩展程序 可以拦截 Web 请求 获取 Web 请求来源的 HTML 并对其进行处理 我使用 DOMParser 来解析 HTML 并且意识到 DOMParser 正在导致大量内存泄漏问题 最终导致 chrome 扩展崩溃
  • JQuery 删除和内存泄漏

    我正在开发一个游戏 我看到了很多内存消耗 我使用jquery animate 动画完成后 我 remove 元素 我的问题是 从 dom 树中删除一个元素后 对象还存在记忆中吗 Javascript 是一种垃圾收集语言 这意味着当没有代码保

随机推荐

  • 如何添加清理任务 - 未找到任务“清理”

    我在用https github com eriwen gradle js plugin https github com eriwen gradle js plugin我希望能够 干净 地运行任务 当我运行 gradle d clean 时
  • 将大写字母替换为小写字母

    我正在尝试使用正则表达式将大写字母替换为相应的小写字母 以便 EarTH 1 MerCury 0 2408467 venuS 0 61519726 becomes earth 1 mercury 0 2408467 venus 0 6151
  • 两个简单递归函数的 Big-O 表示法

    我在 Python 中有两个递归函数 只是想知道它们的大 O 表示法 这些的大 O 是什么 def cost n if n 0 return 1 else return cost n 1 cost n 1 def cost n if n 0
  • Windows 10 Iot/UWP 上的 Azure 存储库客户端?

    Windows 10 Iot Core UWP RPi 似乎不支持 Azure 存储客户端 不过 我将它用于 Blob 并且它对于表也可以正常工作 现在 更新到最新的稳定版 和 pre 尝试了两者 后 对表的访问挂起 await table
  • IJulia笔记本中的内核错误--无法在Jupyter中启动内核

    Do you know how to fix this kernel error and what caused it I have called Julia from xterm bash like the following photo
  • Javascript 将日期时间字符串转换为纪元

    所以我放弃了 一整天都在尝试这样做 我有一个字符串 它提供以下格式的日期和时间dd MM yyyy hh mm 04 12 2012 07 00 我需要将其转换为纪元日期 以便我可以对其进行一些计算 我无法修改发送给我的日期时间的格式 Ja
  • 如何检查元素是否没有特定的类?

    如何查看是否有班级 例如 我知道如何检查它是否具有 test 类 但是如何检查它是否不具有 test 类 if this hasClass test if this hasClass test
  • 为什么eclipse编译shell javac或mvn的文件会产生错误:代码太大?

    环境 日食月神 行家3 2 3 java 7 我见过问题 https stackoverflow com questions 2407912 code too large compilation error in java像这样 但我不明白
  • 有没有一种简单的方法可以修剪 NetworkX 图中断开连接的网络?

    我正在使用 Python 的 NetworkX 包来计算不同大小网络的一堆网络统计信息 我正在扫描一个独立的参数 系统地修剪边缘 因此有时小型网络会与主网络断开连接 有没有一种简单的方法可以检测并删除 NetworkX 中那些较小的断开连接
  • Pyspark Dataframe:获取满足条件的上一行

    对于 PySpark DataFrame 中的每一行 我尝试从满足特定条件的前一行获取一个值 也就是说 如果我的数据框看起来像这样 X Flag 1 1 2 0 3 0 4 0 5 1 6 0 7 0 8 0 9 1 10 0 我想要的输出
  • 找不到 JDBC 驱动程序

    try String userName root String password
  • 带 setter 的 mapState

    我想通过分配setter方法mapState 我目前使用一种解决方法 命名我感兴趣的变量 todo 作为临时名称 storetodo 然后在另一个计算变量中引用它todo methods mapMutations clearTodo upd
  • EBNF 转义字符

    我正在尝试为基于 python 的伪语言制作字符串的语法表达式 我想知道如何执行以下操作 字符串以 或 开头或结尾 它可以包含除 n 之外的任何字符 仅当另一个反斜杠开头时才能包含这些字符 例如 Mark said Boo n 公认 我只能
  • 使用 Rails 3 和远程设计 => true

    我在使用 AJAX 登录设备时遇到问题 我正在使用 remote gt true选项和 javascript 帮助程序的 jQuery 版本 https github com rails jquery ujs 当用户输入正确的信息时 会话视
  • 不使用 IFrame 的原因?

    有什么原因吗not到底要使用 iframe 吗 我目前使用它从不同的服务器加载页面 注册页面 分布式应用程序的一部分 以提供无缝体验 使用 iframe 被认为是不好的做法还是可以使用 iframe 是一个很棒的工具 它享有近乎通用的浏览器
  • 如何在 pandas 中用滚动平均值填充 nan 值

    我有一个数据框 其中几个地方包含 nan 值 我正在尝试执行数据清理 其中我用前五个实例的平均值填充 nan 值 为此 我提出了以下建议 input data frame var list fillna input data frame v
  • 如何使用 Xamarin.UITest 在 iOS 上访问照片所需的权限对话框中点击“确定”按钮?

    我正在使用 Xamarin UITest 在 iOS 应用程序上执行自动化 问题是 在访问图库上传照片时 出现一个权限对话框 我需要点击 确定 按钮将其关闭 我尝试过以下方法 但没有成功 使用树命令不会显示该对话框的层次结构 因此我 无法找
  • 抛出 BufferError 的示例

    在阅读 Python 3 3 文档时 我注意到有关 BufferError 异常的条目 当无法执行与缓冲区相关的操作时引发 现在我想知道在什么情况下代码可能会抛出此错误 以确定它是由于编程错误还是更像是某种系统错误 有人有这个例外的例子吗
  • 结构错误找不到记录器“paramiko.transport”的处理程序

    我不确定为什么会收到此错误并终止我的连接 我通过 easy install 从 1 7 5 更新了 paramiko 1 7 6 我正在尝试设置 Fabric 以将 Django 应用程序上传到我的服务器 当我尝试备份现有应用程序目录时 似
  • 将 DOM 元素创建到集合的项目中

    尝试从模板创建 DOM 元素 gota 首先我创建模板 function htmlToElement html var template document createElement template template innerHTML