2015-08-28 2 views
0

У меня есть два набора блоков тегов <script>, содержащих функции JavaScript и помещенные в приоритетные заказы. Один из тегов содержит src в другом внешнем файле .js, как показано ниже.Вызов функций JavaScript между блоками тегов скриптов

<script src='libtest.js'> 
    function helloworld() { 
     alert('hello world'); 
    } 

    function callLibraryTest() { 
     runLibraryTest(); //Calls into libtest.js for auto test. 
    } 
</script> 

... some html ... 

<script> 
    function callHello() { 
     helloworld(); 
    } 
</script> 

Ошибки я получаю функция callHello() не имеет helloworld() определена. Как я могу это решить?

Обратите внимание, что сценарии намеренно разделены, потому что, если они были сгруппированы, вызов callHello() также может не определяться.

Спасибо.

+0

https://developer.mozilla.org/en/docs/Web/HTML/Element/script#Attributes - src: 'Этот атрибут определяет URI внешнего скрипта; это может быть использовано как альтернатива встраиванию скрипта непосредственно в документ. Элементы сценария с указанным атрибутом src не должны иметь встроенного в его теги скрипта. « –

+0

Я не понимаю ваше замечание о' callHello() ', которое не определено. Если вы поместите его в тег '

1

Предполагая, что вы пытаетесь запустить функцию «callHello», когда «libtest.js» загружен успешно. Поскольку Дэн уже объяснил, что тег с атрибутом src не может содержать javascript-код в его теле. Вы можете попробовать трюк, как метод обратного вызова. Например, измените тег src на «libtest.js? Callback = callHello», а в конце libtest.js выполните метод обратного вызова.

Надеюсь, это поможет!

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