【Javascript】innerHTML中的script不执行的解决办法

    默认情况下,使用innerHTML操作dom中的内容时,加入的innerHTML中包括的script脚本会被加入但是不会被解析执行,如下所示

    提示:你可以先修改部分代码再运行。

    在一些情况下,当innerHTML中包含script脚本时希望它能执行起来。



    解决的思路是对innerHTML进行手动解析并执行,然后把剩下的html放回innerHTML。

    Ma Bingyao同学对上面的操作做了个封装,用起来很简洁,代码如下:

    提示:你可以先修改部分代码再运行。

    [完毕]



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【Javascript】innerHTML中的script不执行的解决办法
    标签:
    分享:

已经有9 条评论抢在你前面了~

  1. 沙发
    大猫猫 2010年10月17日 下午6:00

    直接eval()一下不就好了,干嘛这么麻烦

    [回复]

    晴枫

    晴枫 回复:

    @大猫猫, 脚本异步加载,夹杂在html之中的话就不能直接eval了

    [回复]

  2. 板凳
    shy9000 2010年6月28日 下午9:35

    看PHP没有任何问题的我,看到JS就是一脸茫然…
    =.=

    [回复]

    晴枫

    晴枫 回复:

    @shy9000, 平时JS碰到的问题比PHP多 常规用用觉得PHP听傻瓜的

    [回复]

    shy9000 回复:

    @晴枫,
    的确,PHP编程起来确实没JS那么麻烦…

    [回复]

    晴枫

    晴枫 回复:

    @shy9000, JS牵扯到浏览器兼容性的时候最麻烦,服务器端的程序就没这破事

    [回复]

    shy9000 回复:

    @晴枫, 呵呵,头痛的IE6呀,抓狂状态了.
    啥时候IE6能淘汰就好了,现在写模板就怕IE6.

    [回复]

    晴枫

    晴枫 回复:

    @shy9000, 当办公机都换成Win7的时候,IE6自然就消亡了,不过似乎长路漫漫….

    [回复]

    shy9000 回复:

    @晴枫, 估计够呛,至少4-5年.

    [回复]

无觅相关文章插件,快速提升流量