我正在使用MVC 2框架并添加了一些用于扩展div的javascript。它在firefox,chrome,opera和safari中运行良好,但在Internet Explorer中却没有。我得到一个'对象预期'错误。这是我的代码
jquery导入位于site.master文件中
<head runat="server">
<title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title>
<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js" charset="utf-8"></script>
在mvc视图中的Javascript:测试警报在IE中出现,但test2没有出现。
<script type="text/javascript">
alert("test");
$(document).ready(function () {
alert("test2");
$(".expandingcontent").hide();
$(".divexpand").click(function () {
var divID = "#" + $(this).attr("id").substring(6);
if ($(divID).is(":hidden")) {
$(divID).slideDown("slow");
} else {
$(divID).hide();
}
});
});
</script>
我尝试将javavscript放在页面的边缘,最后似乎没有任何效果。我也试过使用暂停,但也没有成功。我正在使用IE 8,非常感谢任何帮助谢谢!
答案 0 :(得分:3)
您对Google CDN资源的引用有误,特别是如果您的网站使用的是SSL 像这样改变你的参考,它应该有效。
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
因为,
这不是简单的阅读,但是 section 4.2 of RFC 3986规定 省略的完全限定的URL 协议(HTTP或HTTPS) 共。当URL的协议是 省略,浏览器使用 基础文件的协议 代替。
戴夫沃德解释得更多:Cripple the Google CDN’s caching with a single character
P.S:最好使用Google CDN和a local fallback resource in case CDN fails来加载
答案 1 :(得分:2)
可能是因为它无法加载jquery.js?尝试下载并将其作为本地资源。
答案 2 :(得分:1)
确保在执行$(document).ready函数之前包含jquery脚本文件。
答案 3 :(得分:1)
在我的情况下,我在JS中有一个无关的console.log,它在IE中悄然爆发。这令人困惑,因为当我启用IE开发人员工具时,它神奇地开始工作。无论如何,检查一下。