IE9 Javascript Error :: Undefined / Null

时间:2012-02-10 23:06:37

标签: javascript internet-explorer null internet-explorer-9 undefined

我有一块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>

2 个答案:

答案 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标记之一,否则您将在任何浏览器中收到此错误。