2009-06-10 3 views
2

Я новичок в JQuery, и я столкнулся с проблемой при попытке сместить сценарии JQuery в отдельный файл в папке проекта. Я работаю с плагином под названием Corner. Вот соответствующая часть HTML файлаИспользование отдельного файла .js для обработки JQuery

<script type="text/javascript" src="scripts/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="scripts/jquery.corner.js"></script> 
<script type="text/javascript" src="scripts/myJQuery.js"></script> 

Комментирование выше линии, и раскомментировать сценарий ниже делает вилку в работе. Содержимое myJQuery.js - это точный сценарий ниже (исключая теги скриптов).

<!--<script> 
     $(document).ready(function() 
     { 
       $("div.container").corner(); 
      $("div.linkList").corner(); 
     }) 
    </script>--> 

HTML:

<body> 
    <div class ="container"> 
     <div class ="header"></div> 
    <div class ="linkList"></div> 
    </div> 
</body> 

Любые идеи о том, почему же код работает в одну сторону (в HTML-файл), но не по-другому (отдельный .js файл)? Заранее спасибо.

+0

Очень важно, что упомянутый ниже Emil, что 'jquery-1.3.2.min.js' происходит перед вашим собственным js импорт. – andi

ответ

0

Обычная причина - проскальзывание имен файлов или разрешений.

Проверьте свои журналы веб-сервера на наличие ошибок.

3

Вы говорите, что код:

$(document).ready(function() 
      { 
          $("div.container").corner(); 
       $("div.linkList").corner(); 
     }) 

Работы, когда он рядный, но не во внешнем файле?

Является ли приведенный выше код единственным кодом в myJQuery.js? Если это не так, убедитесь, что в файле содержатся синтаксические ошибки, в результате чего код не запускается. Я создал пример того, что у вас выше, с кодом в отдельном файле, и он работает правильно. Проверьте http://thetimbanks.com/demos/help/separate/ и просмотрите источник, если хотите увидеть код.

3

При работе с ПК убедитесь, что вы сохранили файл в формате кодировки ANSI. Если он находится в UTF-8 формате убедитесь, что вы указали, что в вашем тег сценария, а именно:

<script type="text/javascript" src="scripts/myJQuery.js" charset="UTF-8"></script> 
0

Проблемы я вижу, это HTML комментарий вы используете <!-- --> ..

если помещены внутрь JS файл они вызывают бы файл не загружается, так как они не являются Javascript комментарии, но HTML ..

так, если код в файле JS является

<!-- 
       $(document).ready(function() 
       { 
           $("div.container").corner(); 
        $("div.linkList").corner(); 
      }) 
--> 

затем сделать это Li ke this

//<!-- 
       $(document).ready(function() 
       { 
           $("div.container").corner(); 
        $("div.linkList").corner(); 
      }) 
//--> 
2

Убедитесь, что перед javascript-файлами вызывается «jquery-1.3.2.min.js».

0

До тех пор, пока вы используете Функция API JQuery, например. $(document).ready(); Вам нужно вызвать jquery-1.3.2.min.js перед вашим пользовательским js-файлом, включая функцию JQuery API.

Смежные вопросы