其实很简单。我有以下代码.. 它可以在所有其他 html5 兼容浏览器(Safari 5、Chrome 9、FireFox)中运行,但在 IE9 (RC) 中我会收到以下错误。
jquery.min.js
Line: 16 Error: Object doesn't support property or method 'getElementsByTagName'
jquery-ui.min.js
Line: 40 Error: Object doesn't support property or method 'tabs'
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.10/jquery-ui.min.js"></script>
<script type="text/javascript">
$(function () {
$("#ribbon").tabs();
});
</script>
</head>
<body>
<header>
<span id="branding"></span>
<div id="ribbon-navigation">
<div id="ribbon">
<ul>
<li><a href="#ribbon-1">1</a></li>
<li><a href="#ribbon-2">2</a></li>
<li><a href="#ribbon-3">3</a></li>
<li><a href="#ribbon-4">4</a></li>
</ul>
<div id="ribbon-1" class="ribbon-strip">
@Html.Partial("Menus/Ribbons/__H1")
</div>
<div id="ribbon-2" class="ribbon-strip">
@Html.Partial("Menus/Ribbons/__2")
</div>
<div id="ribbon-3" class="ribbon-strip">
@Html.Partial("Menus/Ribbons/__3")
</div>
<div id="ribbon-4" class="ribbon-strip">
@Html.Partial("Menus/Ribbons/__4")
</div>
</div>
</div>
</header>
</body>
</html>
如果我的 CSS 没有生成正确的样式,我可以理解 - 但看起来它完全忽略了 $("#ribbon").tabs();
。有什么想法吗?
最佳答案
进一步挖掘产生了更多丰硕的成果... bugs.jquery.com/ticket/8052 - 这显然是 IE 中的错误,并且已在昨天发布的 jQuery 更新中得到修复!我不得不引用 jQuery 1.5.1,它一切正常。
感谢所有提供有用建议的人。他们都是非常好的想法,但这次证明只是 IE9 的一个错误,仅此而已。
关于jquery - IE9 不接受标准的 jQuery 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5120869/