Функция JavaScript перестает работать, когда она перемещается во внешний файл .js - PullRequest
0 голосов
/ 10 апреля 2011

Я переместил функцию со страницы html во включенный справочный файл. Перестал работать.

Полное содержимое файла:

alert('file included');

function doAlert() {
   alert('functions work');
}

На странице HTML у меня есть

<html>
<head><title>Page</title></head>
<body>
  HTML Template Header

  Some Content 

  ASP.NET MVC Partial View Starts
  <script type="text/javascript">
      doAlert();
  </script>
  ASP.NET MVC Partial View ends

  HTML Template Footer

  <script type="text/javascript" src="/Scripts/wtf.js"></script>
</body>
</html>

Предупреждение «файл включен» работает, а «функции работают» - нет. Что я делаю не так?

Ответы [ 2 ]

3 голосов
/ 10 апреля 2011

Убедитесь, что вы включили файл перед выполнением функции.

<script src="file.js" type="text/javascript"></script>
<script type="text/javascript">
   doAlert();
</script>
1 голос
/ 10 апреля 2011

Вы должны вызывать свои функции следующим образом:

window.onload = function() {
    doAlert();
    // func_1();
    // func_2();
    // func_3();
    // ...
    // func_n();
};

См. this для получения дополнительной информации о window.onload событии.

Пример кода на jsFiddle

...