强制jQuery.getScript使用SCRIPT元素,从不使用XHR

时间:2014-11-08 20:51:26

标签: jquery xmlhttprequest getscript script-element

old answer (circa. 2009)表示jQuery.getScript更改行为取决于请求的脚本资源/网址是否为域本地或不是 1

虽然它确实提供了一个工作(并且不乏在线动态加载JavaScript元素的示例),但我正在寻找“2014+ jQuery 1.9 / 2”方法来< em>避免使用XHR / AJAX来处理所有“获取脚本”请求,包括可能是域本地的请求。

是否有可能强制 jQuery.getScript(或类似的“jQuery”函数)通过​​SCRIPT元素加载外部JavaScript,即使对于本地请求也是如此?

没有太多的黑客......?如果答案是“使用标准 jQuery无法完成”,那么这是合适的,我会选择其中一种替代实现。


1 今天的上一个问题/答案事件是否相关?快速浏览一下来源会显示XHR is always used。 jQuery文档显示$.ajax等效,并且回调都提供了jqXHR参数..

getScript: function( url, callback ) {
   return jQuery.get( url, undefined, callback, "script" );
},

1 个答案:

答案 0 :(得分:0)

从jQuery 1.9开始(可能还有很长一段时间),$.getScript完成的请求始终通过XHR完成,而不是通过<scrip>元素完成。链接的“旧”答案确实已经过时,不再准确。

有很多关于如何手动使用在线可用的<script>元素的例子 - 但现代jQuery中没有任何“标准”直接支持这一点。