Javascript Cross домен не соответствует - PullRequest
0 голосов
/ 21 января 2012

Я пытаюсь сделать подключение с помощью JS. У меня есть следующий код:

var fileref = document.createElement('script');
fileref.src = "js/index.js";
document.documentElement.appendChild(fileref);

Я могу убедиться, что код загружается через домен, но он не всегда выполняется. Даже если я установлю его раньше </head>

Иногда это так, но иногда нет. Есть идеи, что я могу делать не так?

1 Ответ

2 голосов
/ 21 января 2012

JavaScript иногда запускается до того, как document.documentElement существует.Поэтому, когда он добавляет новый элемент script, происходит сбой.Несоответствие («иногда это происходит, но иногда просто нет») связано с отображением страницы с очень немного отличающимися скоростями.* Поместите это в ваш <head>:

<script type="text/javascript">
    (function () {
        var scrpt = document.createElement('script');
        scrpt.type = 'text/javascript';
        scrpt.async = true;
        scrpt.src = 'js/index.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(scrpt, s);
    })();
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...