gpt4 book ai didi

javascript - 设置元素的 innerHTML 属性以包含脚本元素时,IE 中出现奇怪的问题

转载 作者:行者123 更新时间:2023-11-28 10:05:18 25 4
gpt4 key购买 nike

当我将元素的 innerHTML 属性设置为包含脚本元素的字符串时,我在 IE 中遇到了一个奇怪的问题。

当innerHTML设置如下时会发生什么:

domEl.innerHTML = "<script type=\"text/javascript\">alert(\"hello world\");</script>"
alert(domEl.innerHTML);

警报框不显示任何文本,就好像脚本元素已完全删除一样。此外,检查元素的 childNodes 集合还显示脚本元素不存在为 domEl.childNodes.length = 0。

但是,如果您在脚本标记之前添加一些文本,如下所示:

domEl.innerHTML = "start text<script type=\"text/javascript\">alert(\"hello world\");</script>"
alert(domEl.innerHTML);

当显示警报框时,脚本元素就会出现。

为什么会发生这种情况以及如何正确修复它?这是 IE 的错误吗?它在最新版本的 Chrome 和 Firefox 中运行良好。我为此使用 IE 8。

最佳答案

看起来像是一个错误,或者是 IE 中的一些奇怪的安全考虑。尝试在文本周围使用 XMP 标签。它可能会起作用,但这取决于您想要实现的目标。

关于javascript - 设置元素的 innerHTML 属性以包含脚本元素时,IE 中出现奇怪的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8496519/

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