让innerHTML的脚本也可以运行起来


Posted in Javascript onJuly 01, 2006

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

 程序代码
var fillHTML = function (el,HTMLString) {
 if (!el) return;
if (window.ActiveXObject) { //For IE
el.innerHTML = "<img style='display:none'/>" + HTMLString.replace(/<script([^>]*)>/ig, '<script$1 defer>');
el.removeChild(el.firstChild)
} else { //For Mozilla,Opare
var nSibling = el.nextSibling;
var pNode = el.parentNode;
pNode.removeChild(el);
el.innerHTML = HTMLString;
pNode.insertBefore(el,nSibling)
}
}

Javascript 相关文章推荐
30分钟就入门的正则表达式基础教程
Feb 25 Javascript
js判断数据类型如判断是否为数组是否为字符串等等
Jan 15 Javascript
jQuery性能优化的38个建议
Mar 04 Javascript
javascript图片预加载实例分析
Jul 16 Javascript
Bootstrap+jfinal实现省市级联下拉菜单
May 30 Javascript
Javascript实现信息滚动效果
May 18 Javascript
jQuery滚动插件scrollable.js用法分析
May 25 jQuery
jQuery+ajax实现局部刷新的两种方法
Jun 08 jQuery
利用Jasmine对Angular进行单元测试的方法详解
Jun 12 Javascript
微信小程序全局变量GLOBALDATA的定义和调用过程解析
Sep 23 Javascript
Vue 解决通过this.$refs来获取DOM或者组件报错问题
Jul 28 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
Jan 13 Vue.js
DEFER怎么用?
Jul 01 #Javascript
让插入到 innerHTML 中的 script 跑起来的实现代码
Jul 01 #Javascript
在网页中控制wmplayer播放器
Jul 01 #Javascript
Javascript的IE和Firefox兼容性汇编
Jul 01 #Javascript
提高代码性能技巧谈—以创建千行表格为例
Jul 01 #Javascript
对textarea框的代码调试,而且功能上使用非常方便,酷
Jun 30 #Javascript
列表内容的选择
Jun 30 #Javascript
You might like
利用PHP实现与ASP Banner组件相似的类
2006/10/09 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
JavaScript入门教程(2) JS基础知识
2009/01/31 Javascript
javascript插入样式实现代码
2012/02/22 Javascript
JS模拟按钮点击功能的方法
2015/12/22 Javascript
Javascript获取background属性中url的值
2016/10/17 Javascript
关于AngularJs数据的本地存储详解
2017/01/20 Javascript
js实现方块上下左右移动效果
2017/08/17 Javascript
Angular弹出模态框的两种方式
2017/10/19 Javascript
JS前端知识点总结之页面加载事件,数组操作,DOM节点操作,循环和分支
2019/07/04 Javascript
vue实现表单录入小案例
2019/09/27 Javascript
[07:54]DOTA2 MV《我的动力鞋》 ImbaTV 出品
2014/11/21 DOTA
[00:32]2018DOTA2亚洲邀请赛VGJ.T出场
2018/04/03 DOTA
浅析python中SQLAlchemy排序的一个坑
2017/02/24 Python
Python+matplotlib实现华丽的文本框演示代码
2018/01/22 Python
python制作朋友圈九宫格图片
2019/11/03 Python
Python-openCV读RGB通道图实例
2020/01/17 Python
Python 按比例获取样本数据或执行任务的实现代码
2020/12/03 Python
一款纯css3实现的竖形二级导航的实例教程
2014/12/11 HTML / CSS
Html5游戏开发之乒乓Ping Pong游戏示例(一)
2013/01/21 HTML / CSS
美国浴缸、水槽和水龙头购物网站:Vintage Tub & Bath
2019/11/05 全球购物
购买原创艺术品:Zatista
2019/11/09 全球购物
澳大利亚购买太阳镜和眼镜网站:Glamoureyes
2020/09/22 全球购物
Java程序开发中如何应用线程
2016/03/03 面试题
生物化工专业个人自荐信
2013/09/26 职场文书
毕业生物理教师求职信
2013/10/17 职场文书
拓展培训心得体会
2014/01/04 职场文书
《小松树和大松树》教学反思
2014/02/20 职场文书
初中班主任寄语
2014/04/04 职场文书
专项法律服务方案
2014/06/11 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
个人股份合作协议书
2014/10/24 职场文书
2015年高三毕业班班主任工作总结
2015/10/22 职场文书
Python自动化爬取天眼查数据的实现
2021/06/15 Python
 Python 中 logging 模块使用详情
2022/03/03 Python