Javascript 脚本的动态加载显示了同一JS文件的不同行为

Javascript 脚本的动态加载显示了同一JS文件的不同行为,javascript,dom,browser,Javascript,Dom,Browser,在我们的网站上加载JSSDK时,我尝试了几种不同的方法。 我注意到代码片段1导致CORS错误,而代码片段2在同一页面上加载相同的脚本,没有任何问题 代码片段1(使用document.body.appendChild,引发CORS异常) 代码段2(使用parentNode.insertBefore,无CORS异常) 我试图找出每种情况下行为不同的原因,但找不到任何原因 有人能告诉我为什么我会看到这种行为吗?我看到运行代码的唯一区别是@Pointy在注释上指出的on,第一个脚本生成: <scr

在我们的网站上加载JSSDK时,我尝试了几种不同的方法。 我注意到代码片段1导致CORS错误,而代码片段2在同一页面上加载相同的脚本,没有任何问题

代码片段1(使用document.body.appendChild,引发CORS异常)

代码段2(使用parentNode.insertBefore,无CORS异常)

我试图找出每种情况下行为不同的原因,但找不到任何原因


有人能告诉我为什么我会看到这种行为吗?

我看到运行代码的唯一区别是@Pointy在注释上指出的on,第一个脚本生成:

<script crossorigin="anonymous" src="https://www.example.com/sdk.js"></script>

第二条:

<script async="" src="https://www.example.com/sdk.js"></script>


在我的控制台上运行,因此可能是
交叉源
对cors错误负责。(同样的情况也发生在console上,顺便说一句)

我认为元素属性名是“crossOrigin”,而不是“crossOrigin”。你是对的,只是用scriptTag.crossOrigin='anonymous'进行了测试,现在我得到了相同的行为。谢谢
<script crossorigin="anonymous" src="https://www.example.com/sdk.js"></script>
<script async="" src="https://www.example.com/sdk.js"></script>