我在页面加载完毕后,利用后台函数exescript 执行一段javascript,如果是普通的他能生效,但是如果遇到一些监听事件,如下面代码:document.addEventListener?f=function(){document.removeEventListener("DOMContentLoaded",f,i);a()}:document.attachEvent&&(f=function(){document.readyState==="complete"&&(document.detachEvent("onreadystatechange",f),a())});(function(){if(!d)if(d=g,document.readyState==="complete")a.c=g;else if(document.addEventListener)document.addEventListener("DOMContentLoaded",
f,i),window.addEventListener("load",a,i);else if(document.attachEvent){document.attachEvent("onreadystatechange",f);window.attachEvent("onload",a);var e=i;try{e=window.frameElement==h}catch(u){}document.documentElement.doScroll&&e&&b()}})();return function(b){a.c?b():e.push(b)}})().c=i;var t=navigator.cookieEnabled,v=navigator.javaEnabled(),w=navigator.language||navigator.browserLanguage||navigator.systemLanguage||navigator.userLanguage||"",x=window.screen.width+"x"+window.screen.height,y=window.screen.colorDepth;var z=["cpro.baidu.com"],A=0,B=(new,以下省略..... 
他不会执行,因为页面已经加载完毕. 现在的的问题是,当下载完后,我动态执行监听类的javascript,怎样才能在后台激发这些监听代码.

解决方案 »

  1.   

    我测试过了,如果是没有监听的JS,没有问题,即是后台运行JS没有问题,而且我执行这一段代码时,也没有看到什么错误发生
      

  2.   

    因为你监听的那两事件DOMContentLoaded和load,在页面加载完毕后已经触发过了,不会在触发第二次的。
    把你要执行的东西直接写就可以了。 不用绑定在那两事件里。
      

  3.   

    将那些要后台去激发的代码封装好直接输出在页面中。然后一切交给前端去处理当然,后台也可以根据你的业务需要,输出一些条件判断在前面的script中,以便告知脚本应该执行哪个函数