Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery加载外部脚本而不使用异步_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery加载外部脚本而不使用异步

Javascript 使用jQuery加载外部脚本而不使用异步,javascript,jquery,Javascript,Jquery,我需要在两秒钟后在页面上的特定位置加载一个外部脚本,并且不使用异步。换句话说,脚本需要在两秒钟后加载到我在HTML页面中放置它的确切位置。当我使用下面的代码时,我得到一个控制台错误: 未能对“文档”执行“写入”:无法写入 从异步加载的外部脚本导入文档,除非 它是显式打开的 如果将async设置为false,为什么会出现该错误 如果将async设置为false,为什么会出现该错误 async属性仅适用于XHR请求(它所触发的功能在这里被弃用)。您说的是dataType:“script”,因此请求是

我需要在两秒钟后在页面上的特定位置加载一个外部脚本,并且不使用异步。换句话说,脚本需要在两秒钟后加载到我在HTML页面中放置它的确切位置。当我使用下面的代码时,我得到一个控制台错误:

未能对“文档”执行“写入”:无法写入 从异步加载的外部脚本导入文档,除非 它是显式打开的

如果将async设置为false,为什么会出现该错误

如果将async设置为false,为什么会出现该错误

async
属性仅适用于XHR请求(它所触发的功能在这里被弃用)。您说的是
dataType:“script”
,因此请求是通过向文档中注入
元素来处理的,而不是通过使用XHR

我需要在两秒钟后在页面上的特定位置加载一个外部脚本,并且不使用异步。换句话说,脚本需要在两秒钟后加载到我在HTML页面中放置它的确切位置

由于外部脚本使用了
document.write
,我认为这是不可能的

您应该将其重写为使用DOM操纵

通过使用,您可以识别
元素在DOM中的位置,并将内容插入其中

正在加载的脚本用于第三方表单(Kajabi),我无法更改他们使用document.write的方式


最糟糕的方法是让它写入CSS中设置为
display:none
的元素,然后在计时器上切换显示值。

为什么不能在开始时加载该脚本,然后在2秒后执行它?
无法在“Document”上执行“write”
。。。可能使用
文档。编写
。。。这里的侦探工作很棒@Terry:Pie,这是一个XY问题-你真正的问题是你试图使用document.write。注意document.write立即输出-没有“document.write在2秒后”的概念-它在流生成时在流中输出。如果它在2秒钟后运行,它将在
之后运行。我建议您提出一个新问题,大致如下:“我如何处理此文档。在2秒钟后在这个确切的位置编写”(并在需要的地方提供示例doc.write和示例html)@freedomn-m我认为更好的问题是“如何避免使用doc.write此脚本”,但我同意你关于这是一个XY问题的观点
setTimeout(function(){
   $.ajax({
        url: 'https://example.com/embed.js',
        async: false,
        dataType: "script",
    });
}, 2000);