zoukankan      html  css  js  c++  java
  • ajax读取页面后,页面script块未执行的处理【原创】

      在用ajax获取远程页面内容后,发现里面的script块未执行,第一感觉是把那些代码调到当前页面,但是又觉得不太方便,其次可以搜索出所有script块的内容,js文件重新加载,代码重新执行,效率是低了点,但更方便。
      顺手写了个解决此问题的回调处理:
    var processRequest=function(_instance)
        {
            document.getElementById('tdiv').innerHTML
    +=_instance.responseText;        
            
    var _c=document.getElementsByTagName("SCRIPT");
            
    var _first=null;
            
    for (var i=0;i<_c.length;i++)
            {
                
    if (_c[i].src)
                {
                    
    var _s=document.createElement("script");
                    _s.type
    ="text/javascript";
                    _s.src
    =_c[i].src;
                    _c[
    0].insertAdjacentElement("beforeBegin",_s);
                    _c[i].parentNode.removeChild(_c[i]);             
                }
                
    else if (_c[i].text)
                {
                    window.execScript(_c[i].text);
                }
            }
        }

      当取得页面内容时,script块已经在dom树中,只是将它作为text执行了。
  • 相关阅读:
    第一道题:无头苍蝇装头术(望不吝赐教)
    jdk8 list是否包含某值的一些应用
    Failed to close server connection after message failures; nested exception is javax.mail.MessagingException: Can't send command to SMTP host
    itext pdf加密
    TiDB-禁用遥测功能
    TiDB-配置调整
    DM-表空间
    DM-INI参数配置
    DM-DSC集群配置
    PG-并行查询
  • 原文地址:https://www.cnblogs.com/zxub/p/418397.html
Copyright © 2011-2022 走看看