我有一块JS(下面)在IE9中给我以下错误:
属性'$'的值为null或未定义,而不是Function对象
在FFX,Chrome和Safari中我没有遇到任何问题。不知道这里发生了什么 - 仍然学习一点,所以如果很明显,请对我这么容易:)
提前致谢!
<div id="sample-widget" style="">
<link rel="stylesheet" type="text/css" href="widget.css" media="screen">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type="text/javascript">
function LA_triggerOverlay() {
$("#la-w-001-overlay").toggle();
};
$(function () {
$("#sample-widget").show();
});
</script>
<div>
<a href="#" onclick="LA_triggerOverlay(); return false;">
</div>
答案 0 :(得分:3)
在最新版本的chrome和FF [也可能是Safari]中,'$'作为document.getElementById()的同义词原生支持
IE 9本身不支持此功能,因此您会收到您所说的错误。
然而,正如上面的绅士指出的那样,你可能错过了一个库[很可能是jQuery]。我强烈建议在您的页面中包含jQuery并再次尝试代码。
您可以通过以下代码段轻松引用jQuery:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
因此,如果这是缺失的部分,它应该可以解决您的问题。
答案 1 :(得分:0)
据推测,您还没有在上面添加这个代码来定义$
符号(例如,jQuery或类似代码)。没有默认的$
符号,它只是一些流行的库(jQuery,Prototype和MooTools)使用的符号。除非您在代码上方添加script
标记之一,否则您将在任何浏览器中收到此错误。