首页 > web前端 > js教程 > 如何在不使用'div.innerHTML = str;”的情况下安全地将 HTML 字符串附加到 DOM?

如何在不使用'div.innerHTML = str;”的情况下安全地将 HTML 字符串附加到 DOM?

Mary-Kate Olsen
发布: 2024-11-05 07:13:02
原创
1008 人浏览过

How to Safely Append HTML Strings to the DOM Without Using `div.innerHTML  = str;`?

在不使用 div.innerHTML 的情况下将 HTML 字符串附加到 DOM

使用 div.innerHTML = str; 将 HTML 字符串附加到 DOM;可能很方便,但由于安全漏洞而不鼓励这样做。更安全、更可靠的方法是使用 insertAdjacentHTML() 方法。

使用 insertAdjacentHTML()

insertAdjacentHTML() 提供了一种将 HTML 字符串插入到DOM。它需要两个参数:

  • position: 指定相对于目标元素插入 HTML 的位置。可以是“beforebegin”、“afterbegin”、“beforeend”或“afterend”。
  • html: 要插入的 HTML 字符串。

在您的在这种情况下,将提供的 HTML 字符串附加到

中。通过 ID“test”,您可以使用以下代码:
<code class="javascript">const div = document.getElementById("test");
div.insertAdjacentHTML("beforeend", str);</code>
登录后复制

“beforeend”位置将在

的最后一个子元素之后插入 HTML。

浏览器兼容性

所有现代浏览器都支持 insertAdjacentHTML(),包括 Chrome、Firefox、Safari 和 Edge。

现场演示

如需演示,请访问以下 JSFiddle:http://jsfiddle.net/euQ5n/

以上是如何在不使用'div.innerHTML = str;”的情况下安全地将 HTML 字符串附加到 DOM?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板