$ не определено: что это значит? - PullRequest
3 голосов
/ 01 мая 2009

Я получаю ошибку JS и не могу понять, как ее исправить.

Когда моя страница загружается, IE7 уведомляет меня об ошибке во время выполнения. Кроме того, мой Firebug на Firefox предупреждает меня об ошибке:

$ is not defined
(?)
[Break on this error] $(document).ready(function() { $("a#sin...Out': 300, 'overlayShow': false }); }); 

Когда я иду к обсуждаемым строкам, это так:

<script type="text/javascript" src="/templates/magazeen/js/jquery/jquery.dropdown.js"></script>
    <script type="text/javascript">
    $(document).ready(function() { $("a#single_image").fancybox(); $("a#inline").fancybox({ 'hideOnContentClick': false }); $("a.group").fancybox({ 'zoomSpeedIn': 300, 'zoomSpeedOut': 300, 'overlayShow': false }); });
    </script>

Любая помощь, пожалуйста.

Ответы [ 11 ]

18 голосов
/ 01 мая 2009

Возможно, вы включили только раскрывающуюся часть jQuery, а не все. Попробуйте включить только файл JQuery.js без указания какой части.

12 голосов
/ 01 мая 2009

У вас есть ссылка на скрипт для jQuery над рассматриваемым блоком скрипта? Причина, по которой вы видите эту ошибку, заключается в том, что вы используете функцию jQuery $ без ссылки на сам jQuery.

Вам нужно добавить ссылку на скрипт в jQuery, например:

<script type="text/javascript" src="/yourJsDir/jQuery.js"></script>

если у вас есть локальная копия jQuery.js. В противном случае вы можете использовать размещенную версию Google следующим образом:

<script type="text/javascript" 
    src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/jquery-ui.min.js"></script>

Просто убедитесь, что эти ссылки на скрипты располагаются выше рассматриваемого блока скриптов, так как для вашего плагина jQuery будет определено $.

4 голосов
/ 09 ноября 2012

Попробуйте включить JQuery js перед вашим пользовательским Js-файлом в html:

<script src="../../Scripts/jquery-1.8.2.min.js" type="text/javascript" ></script>
<script src="../../Scripts/___your js___ .js" type="text/javascript"></script>
2 голосов
/ 01 мая 2009

Похоже, что ваш код использует JQuery . Вы уверены, что включили библиотеку JQuery в правильном месте?

1 голос
/ 07 сентября 2011

Звучит как проблема с разрешениями. Убедитесь, что ваши файлы имеют доступ к этому файлу .js. Их должно быть 777.

1 голос
/ 01 мая 2009

Вам, вероятно, нужно включить также jquery.js или jquery.min.js.

0 голосов
/ 07 января 2013

Попробуйте добавить это в свой файл JS

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
0 голосов
/ 04 августа 2011

Каждый раз, когда я получал эту ошибку, это было либо потому, что 1- ссылка на jquery.js была неправильной (неверный путь) 2 - неверное имя файла ...

Так что исправьте путь или написания или имена файлов / папок и т. Д.

0 голосов
/ 24 июня 2011

Эта проблема также может быть связана с проблемой безопасности. Если у вас есть аутентификация на вашем сайте, например

<authentication mode="Forms">   
<forms loginUrl="file1.aspx" defaultUrl="file2.aspx"/>
</authentication>
<authorization>
<deny users="?"/> 
</authorization>

Затем вы должны исключить папку скриптов из этих настроек безопасности со следующим в web.config.

<location path="Scripts">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>
  </location>
0 голосов
/ 05 декабря 2009

Я работал над файлом локально в файле: ///Users/lo_fye/Desktop/jquery/index.html Я включал сценарии с:

<script type="text/javascript" src="/jquery.js"></script>

И я получаю ту же ошибку:

$ is not defined

Исправлено добавление точки к имени скрипта, например:

<script type="text/javascript" src="./jquery.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...