Переменная Javascript src не обнаружена скриптом

Файл сценария и jsfile находятся на сервере домашней страницы Apache. В главном разделе index.html мы имеем

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

И в файле сценария мы ссылаемся на jsfile

function init_disp() {array_len = jsfile.length...

Запуск скриптового файла с someurl или без него приводит к ошибке "jsfile is undefined". Здесь есть проблема, или если серверное программное обеспечение блокирует скрипт, делает ли это это, обнуляя переменные?

Использование IE11 с улучшенной защитой и 64-битной улучшенной защитой, 64-битной Java. Изменить: весь файл сценария (не мой) это:

    addEvent(window,"load",init_disp);
    addEvent(document,"click",show_init);
    // function to add an event listener
    function addEvent(o,e,f) {
    if (o.addEventListener) {
    o.addEventListener(e,f,false);
    return true;
    }
    else if (o.attachEvent) {
    return o.attachEvent("on"+e,f);
    }
    else {
    return false;
    }
    }
    // integer "random()"
    function rand (n)
    {
    return (Math.floor( Math.random ()*n));
    }
    // BEGIN customization settings
    var char_pause = 60; // pause on each character, milliseconds
    var quote_pause = 8000; // pause to show complete quote, milliseconds
    // END customization settings
    var quoteindex;
    var quote,attribution;
    var pos;
    var box;
    var array_len;
    var quote_len,attrib_len;
    var interval = null;
    var busy;
    var cursor_span = "<span class=\"quotefont quotecursor\">";
    var hide_span = "<span class=\"quotefont hidecolor\">"
    var attr_div = "<p></p><div class=\"quotefont attrib\">";

    function init_disp() {
    array_len = jsfile.length;
    box = document.getElementById("quotebox");
    quoteindex = rand(array_len);
    show_init();
    }
    function show_init() {
    busy = false;
    clearInterval(interval);
    quote_array = jsfile[quoteindex].split("\t");
    quote = quote_array[0];
    attribution = quote_array[1];
    quote_len = quote.length;
    attrib_len = attribution.length;
    quoteindex = (quoteindex+1) % array_len;
    pos = 0;
    interval = setInterval('show_quote()',char_pause);
    }
    function show_quote() {
    pos++;
    if(!busy) {
    busy = true;
    if(pos <= quote_len) {
      box.innerHTML = quote.substring(0,pos) +
      cursor_span +
      quote.substring(pos,pos+1) +
      "</span>" +
      hide_span +
      quote.substring(pos+1) +
      "</span>";
    }
    busy = false;
    }
    if(pos > quote_len) {
    pos = 0;
    clearInterval(interval);
    interval = setInterval('show_attr()',char_pause);
    }
    }
    function show_attr() {
    pos++;
    if(!busy) {
    busy = true;
    if(pos <= attrib_len) {
      var attr = attribution.substring(0,pos);
      box.innerHTML = quote + attr_div + attr + "</div>";
    }
    busy = false;
    }
    if(pos > attrib_len) {
    clearInterval(interval);
    interval = setInterval('show_init()',quote_pause);
    }
    }

1 ответ

Решение

Когда вы загружаете файл Javascript, используя <script> признак того, что файл исполняется, а не загружается как объект Javascript.

Другие вопросы по тегам