IE9 Javascript错误::未定义/为Null

IE9 Javascript Error :: Undefined/Null

本文关键字:Null 未定义 错误 IE9 Javascript      更新时间:2023-09-26

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

在最新版本的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>

所以,如果这是缺失的部分,它应该可以解决你的问题。

假设您没有在上面包含定义$符号的代码(例如jQuery或类似代码)。没有默认的$符号,它只是几个流行库(主要是jQuery、Prototype和MooTools)使用的符号。除非在代码上方包含一个带有script标记的代码,否则会出现此错误—在任何浏览器中。