Javascript跨域不一致

标签 javascript cross-domain

我正在尝试使用 JS 进行插入。 我有以下代码:

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

我可以验证代码是否跨域加载,但它并不总是执行。即使我之前设置了</head>

有时会,但有时却不会。关于我可能做错了什么有什么想法吗?

最佳答案

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>

关于Javascript跨域不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8947440/

相关文章:

javascript - 强制刷新 js/css/html 更改 webapp 上的缓存

javascript - AngularJS $scope 没有在 DOM 中更新

jquery - Backbone.js 与 Rest API

asp.net - 跨域 cookie 访问(或 session )

cross-domain - 跨域限制和子域

web-services - 通过jquery跨域调用webservice

javascript - 一个 cookie 上的多个值

javascript - Plupload 过滤器问题

javascript - 如何让对象在数组中找到自己的索引?

Silverlight 跨域无跨站点策略文件