首页 > 网页设计 > 【Javascript】innerHTML中的script不执行的解决办法

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

2010年6月28日 发表评论 阅读评论

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

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

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

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

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

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

[完毕]


枫芸志原创文章,转载请注明来源并保留原文链接

本文链接:http://witmax.cn/js-innerhtml-run-script.html


分类: 网页设计 标签: 3,201次阅读
  1. 2010年6月28日21:35 | #1

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

    [回复]

    晴枫 回复:

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

    [回复]

    shy9000 回复:

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

    [回复]

    晴枫 回复:

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

    [回复]

    shy9000 回复:

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

    [回复]

    晴枫 回复:

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

    [回复]

    shy9000 回复:

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

    [回复]

  2. 大猫猫
    2010年10月17日18:00 | #2

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

    [回复]

    晴枫 回复:

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

    [回复]

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
订阅评论
  欢迎参与讨论,请在这里发表您的看法、交流您的观点。