让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 相关文章推荐
JQuery困惑—包装集 DOM节点
Oct 16 Javascript
js判断生效时间不得大于失效时间的思路及代码
Apr 23 Javascript
基于insertBefore制作简单的循环插空效果
Sep 21 Javascript
微信小程序 HTTPS报错整理常见问题及解决方案
Dec 14 Javascript
利用transition实现文字上下抖动的效果
Jan 21 Javascript
webpack学习笔记之优化缓存、合并、懒加载
Aug 24 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
Sep 16 Javascript
解析Vue 2.5的Diff算法
Nov 28 Javascript
浅谈webpack编译vue项目生成的代码探索
Dec 11 Javascript
JS实现带阴历的日历功能详解
Jan 24 Javascript
微信小程序实现页面分享onShareAppMessage
Aug 12 Javascript
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
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实现获取FLV文件的时间
2015/02/10 PHP
php输出xml属性的方法
2015/03/19 PHP
PHP与Ajax相结合实现登录验证小Demo
2016/03/16 PHP
PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法
2017/09/13 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
doctype后如何获得body.clientHeight的方法
2007/07/11 Javascript
实现超用户体验 table排序javascript实现代码
2009/06/22 Javascript
JavaScript 组件之旅(一)分析和设计
2009/10/28 Javascript
JS取文本框中最小值的简单实例
2013/11/29 Javascript
jquery实现弹出层遮罩效果的简单实例
2014/03/03 Javascript
javascript判断数组内是否重复的方法
2015/04/21 Javascript
JavaScript的面向对象编程基础
2015/08/13 Javascript
javascript帧动画(实例讲解)
2017/09/02 Javascript
JS简单实现数组去重的方法分析
2017/10/14 Javascript
微信小程序slider组件使用详解
2018/01/31 Javascript
vue实现移动端悬浮窗效果
2018/12/01 Javascript
JavaScript中filter的用法实例分析
2019/02/27 Javascript
jQuery子选择器与可见性选择器实例分析
2019/06/28 jQuery
layui 表格操作列按钮动态显示的实现方法
2019/09/06 Javascript
layui 对table中的数据进行转义的实例
2019/09/12 Javascript
基于Vue el-autocomplete 实现类似百度搜索框功能
2019/10/25 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
解决vue-router 切换tab标签关闭时缓存问题
2020/07/22 Javascript
浅谈JavaScript窗体Window.ShowModalDialog使用
2020/07/22 Javascript
Python 深入理解yield
2008/09/06 Python
利用python获得时间的实例说明
2013/03/25 Python
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
2015/04/25 Python
浅析python 中大括号中括号小括号的区分
2019/07/29 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
Python selenium的基本使用方法分析
2019/12/21 Python
县级文明单位申报材料
2014/05/23 职场文书
同志主要表现材料
2014/08/21 职场文书
2015年小学开学寄语
2015/02/27 职场文书
MySQL的Query Cache图文详解
2021/07/01 MySQL
MySQL 数据库范式化设计理论
2022/04/22 MySQL
win10音频服务未响应怎么解决?win10音频服务未响应未修复的解决方法
2022/08/14 数码科技