手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >让innerHTML的脚本也可以运行起来
让innerHTML的脚本也可以运行起来
摘要:最近在脑子一直在想pjblog重构的问题.当然重构前,必须把所有需要做的东西想清楚.其中想到一个js改进的内容,需要innerHTML后的脚...

最近在脑子一直在想pjblog重构的问题.当然重构前,必须把所有需要做的东西想清楚.其中想到一个js改进的内容,需要innerHTML后的脚本也可以运行.但是尝试了一下.发现IE下直接innerHTML的脚本无法执行.尝试了几次发现,插入的HTML里,<script>前面有其他对象,并且script设置了defer,这样的脚本innerHTML被IE执行了.,但是这招对于firefox不灵~~后来找了一些资料发现firefox把对象重新append或者insertBefore一次就可以执行里面的脚本了.

程序代码

varfillHTML=function(el,HTMLString){

if(!el)return;

if(window.ActiveXObject){//ForIE

el.innerHTML="<imgstyle='display:none'/>"+HTMLString.replace(/<script([^>]*)>/ig,'<script$1defer>');

el.removeChild(el.firstChild)

}else{//ForMozilla,Opare

varnSibling=el.nextSibling;

varpNode=el.parentNode;

pNode.removeChild(el);

el.innerHTML=HTMLString;

pNode.insertBefore(el,nSibling)

}

}

【让innerHTML的脚本也可以运行起来】相关文章:

卡拉 OK 字幕效果

jQuery子窗体取得父窗体元素的方法

jQuery的基本概念与高级编程

JavaScript实现斗地主游戏的思路

JavaScript中的this,call,apply使用及区别详解

制作特殊字的脚本

JavaScript实现Iterator模式实例分析

jQuery实现转动随机数抽奖效果的方法

让插入到 innerHTML 中的 script 跑起来的实现代码

js事件监听器用法实例详解

上一篇: DEFER怎么用?
精品推荐
分类导航