gpt4 book ai didi

javascript - 嵌入式 JavaScript 无法在 IE 10 或 11 中运行(在 Chrome 和 Firefox 中运行良好)

转载 作者:行者123 更新时间:2023-11-30 16:21:26 24 4
gpt4 key购买 nike

我正在尝试构建一个简单的网页,根据用户点击“链接”,将

的内容替换为新内容

下面的代码完全符合我在 Chrome 和 Firefox 中的预期,但在 IE 10 或 11 中什么都不做(除了将链接变为访问的颜色):

<!DOCTYPE html>

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#activities").click(function(){
$("#body").load("test02.html");
});
});
</script>
</head>
<body>
<div id="header">
<a href="#" id="activities">Activities</a>
<!-- this stays the same -->
</div>
<div id="body">
<p>this is the content that arrives without needing prompting</p>
<!-- All content will be loaded here dynamically -->

</div>
<div id="footer">
<!-- this stays the same -->
</div>
</body>
</html>

这是“test02.html”的内容:

<p>---</p>
<p>Hello world!</p>
<p>---</p>

我检查了 IE 中的 javascript 安全设置,一切都设置为“启用”。我还尝试将 type="text/javascript"添加到脚本标签中。

一些谷歌搜索表明可能需要重新安装 IE,我已经尝试过了。

有人知道如何让它在 IE 中工作吗?

最佳答案

问题是 IE 在“兼容”模式下崩溃了。在这种情况下,它破坏自身的方式是未能正确查找您的div id="body" 元素。我认为这是我的观察错误,我认为真正的问题是 addEventListener(因为 jQuery 2.x 不再回退到 attachEvent,因为它不支持 IE8 和更早版本 [或“兼容性”像它们一样工作的模式]):

enter image description here

我可以重现这个问题。如果我通过将此添加到 head 元素的顶部来告诉 IE 不要破坏自身(例如,不要使用兼容模式),问题就会消失:

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />

IE 对 Intranet 站点的默认设置是以“兼容”模式显示它们。

有一次我完全不确定在“兼容”模式下它是否会混淆 id “body” 的元素。 IE 有被这样的事情弄糊涂的历史。所以你也可以考虑 the-body 或类似的东西,但我测试过,似乎不需要它。


旁注:您可能还想将 return falsee.preventDefault() 添加到您的点击处理程序,因此它不遵循 # 链接(它将滚动回页面顶部并将 # 添加到地址栏)。

关于javascript - 嵌入式 JavaScript 无法在 IE 10 或 11 中运行(在 Chrome 和 Firefox 中运行良好),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34682246/

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