为什么从CDN JavaScript文件注入脚本标记使用原始主机

时间:2015-01-19 04:27:02

标签: javascript css http same-origin-policy

如果我从CDN (不同主机)加载外部css,例如:

https://cdn.mydomain.com/css/styles.css

然后在styles.css执行:

background: url('../img/bg.png')
来自CDN主机https://cdn.mydomain.com/img/bg.png

bg.png不是来源。

但是,如果我使用CDN https://cdn.mydomain.com/js/main.js中的外部JavaScript执行相同操作,并从main.js注入脚本标记:

var a,b;
b = document.createElement("script");
b.src="/js/foobar.js";
b.type="text/javascript";
b.async=!0;
a = document.getElementsByTagName("script")[0];
a.parentNode.insertBefore(b,a);

foobar.js是从原点加载的,而不是CDN主机。

为什么会这样?

0 个答案:

没有答案