Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.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 如何识别动态插入的<;脚本>;标记到…;跑_Javascript_Jquery_Dom - Fatal编程技术网

Javascript 如何识别动态插入的<;脚本>;标记到…;跑

Javascript 如何识别动态插入的<;脚本>;标记到…;跑,javascript,jquery,dom,Javascript,Jquery,Dom,我正在动态插入一个带有src属性且没有内容的标记。但是浏览器不会在插入后拉下该src并运行脚本——标记只是放在DOM中 我是否可以告诉浏览器“运行”脚本标记 由于我正在使用的另一个代码,对我来说,通过src属性获取代码要比自己获取代码并将其插入标记体更容易——但如果有必要,我也可以这样做(并欢迎对此提出任何建议) 使用请求的信息更新 在加载页面后,根据用户交互任意次数插入脚本标记 我像这样插入了标记(jquery的html函数去掉了脚本标记):document.getElementById(“m

我正在动态插入一个带有
src
属性且没有内容的
标记。但是浏览器不会在插入后拉下该src并运行脚本——标记只是放在DOM中

我是否可以告诉浏览器“运行”脚本标记

由于我正在使用的另一个代码,对我来说,通过
src
属性获取代码要比自己获取代码并将其插入标记体更容易——但如果有必要,我也可以这样做(并欢迎对此提出任何建议)

使用请求的信息更新

  • 在加载页面后,根据用户交互任意次数插入脚本标记
  • 我像这样插入了标记(jquery的html函数去掉了脚本标记):
    document.getElementById(“my div”).innerHTML=“脚本标记,堆栈溢出想要去掉它”

  • 您可以在主脚本中设置一个setTimeout来检查新脚本是否存在。。如果是,那么运行它。你知道它是下载文件还是什么都不做?使用Chrome的网络监视器进行检查

    我认为有一种动态方式可以在不使用src=标记的情况下加载Javascript,但我个人还没有这样做


    为什么不预先加载所有javascript并通过一些内联JS来执行它呢?

    试试下面的代码::它的工作原理

      var script = document.createElement( 'script' );
      script.type = 'text/javascript'; 
      script.src =MY_URL; 
      $("#YOUR_ELEMNT_ID").append( script );
    

    它应该在浏览器将脚本插入dom后立即运行,但您可以尝试将脚本包装到函数中,并在脚本加载后调用该函数:

    var script = document.createElement('script');
    script.setAttribute('type','text/javascript'); 
    script.setAttribute('src',script_url); 
    script.onreadystatechange= function () {
        if (this.readyState == 'complete') 
            initScript();//the whole script is wrapped in this function
    }
    script.onload= initScript;
    

    希望这有帮助

    您可以将插入的.js文档的内容包装在一个函数中,并在插入后调用它。您是否可以使用window.write插入脚本标记?请尝试@ksiegel的建议,并使用Firebug或HTTP Watch等流量监视器查看脚本是否被检索。现在尝试。由于某些原因,append不会将脚本对象附加到我的div。我尝试附加一些其他任意文本,但它确实起了作用。仍在试验…接近…从
    var preview_script=$(“script”)开始似乎运气更好我的意思是
    var preview\u script=$('')让它工作了,没有jquery——Manish,我用对我有用的代码编辑了你的答案——如果你同意,请检查并接受它。