gpt4 book ai didi

javascript - 如何在IE7中获取Javascript中

转载 作者:行者123 更新时间:2023-12-03 00:24:20 24 4
gpt4 key购买 nike

我正在尝试获取 <noscript> 的内容使用 JavaScript 进行标记。我成功地在 FF、Chrome、Opera 甚至 IE6 中获得了它,但在 IE7 上失败了(还没有尝试过 IE8+)。

基本上,这是简化的代码版本:

<noscript>Lorem ipsum</noscript>
<script>
var noscript = document.getElementsByTagName('noscript')[0];
noscript.textContent; // undefined
noscript.innerHTML; // empty string
noscript.childNodes.length; // 0
</script>

我尝试在内部添加元素并定位它们,但没有成功。我尝试包装父元素并获取其 .innerHTML ,但是 <noscript> 之间的任何值标签被丢弃。

注意:我正在构建一个惰性加载器脚本和 <noscript> element 正是我所需要的(浏览器不会获取 <img> 标记内的 src <noscript> 属性。)

最佳答案

在 IE 7 和 8 中,根本不可能检索 <noscript> 的内容。元素。 <noscript> 之间的任何内容和</noscript> HTML 中的标签不会反射(reflect)在 IE 中的 DOM 中,该元素没有子元素且 innerHTMLinnerText是空字符串。

在 IE 6 中,情况很奇怪:与 IE 7 一样,<noscript>元素没有子节点,但其内容反射(reflect)在 innerHTML 中和outerHTML (但不是 innerText )元素的属性。

在这种情况下,您在 IE 中唯一的选择就是将内容放入 <noscript> 中。元素放在其他元素内。模拟 <noscript> 的行为元素,您可以将内容放入立即被 JavaScript 隐藏的元素中(启用脚本时):

<div id="noscript">Lorem ipsum</div>
<script type="text/javascript">
document.getElementById("noscript").style.display = "none";
</script>

关于javascript - 如何在IE7中获取Javascript中<noscript>的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4281931/

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