让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 相关文章推荐
Javascript valueOf 使用方法
Dec 28 Javascript
JQuery 学习笔记 选择器之五
Jul 23 Javascript
javascript 文章截取部分无损html显示实现代码
May 04 Javascript
基于Jquery的仿照flash放大图片效果代码
Mar 16 Javascript
jquery select 设置默认选中的示例代码
Feb 07 Javascript
JS实现单击输入框弹出选择框效果完整实例
Dec 14 Javascript
折叠菜单及选择器的运用
Feb 03 Javascript
详解webpack分离css单独打包
Jun 21 Javascript
pm2发布node配置文件ecosystem.json详解
May 15 Javascript
微信小程序如何调用图片接口API并居中显示
Jun 29 Javascript
微信小程序中悬浮窗功能的实现代码
Aug 02 Javascript
js计时事件实现圆形时钟
Mar 25 Javascript
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的开合式多级菜单程序
2006/10/09 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
2011/11/07 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
2017/04/15 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
PHP编程中的Session阻塞问题与解决方法分析
2017/08/07 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
JS封装cookie操作函数实例(设置、读取、删除)
2015/11/17 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
BootStrap中Datepicker控件带中文的js文件
2016/08/10 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
ES6扩展运算符的用途实例详解
2017/08/20 Javascript
详解JSONObject和JSONArray区别及基本用法
2017/10/25 Javascript
vue-resource + json-server模拟数据的方法
2017/11/02 Javascript
浏览器调试动态js脚本的方法(图解)
2018/01/19 Javascript
JS将网址url转化为JSON格式的方法
2018/07/02 Javascript
vue使用高德地图根据坐标定位点的实现代码
2019/08/22 Javascript
微信用户访问小程序的登录过程详解
2019/09/20 Javascript
微信浏览器左上角返回按钮监听的实现
2020/03/04 Javascript
深入理解Django的自定义过滤器
2017/10/17 Python
pyqt5简介及安装方法介绍
2018/01/31 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
python画微信表情符的实例代码
2019/10/09 Python
python全局变量引用与修改过程解析
2020/01/07 Python
6PM官网:折扣鞋、服装及配饰
2018/08/03 全球购物
您附近的水疗和健康场所:Spafinder(美国)
2019/07/05 全球购物
Quiksilver荷兰官方网站:冲浪和滑雪板
2019/11/16 全球购物
2014年庆元旦活动方案
2014/02/15 职场文书
安卓程序员求职信
2014/02/28 职场文书
爱心活动计划书
2014/04/26 职场文书
企业金融服务方案
2014/06/03 职场文书
财务稽核岗位职责
2015/04/13 职场文书
PL350与SW11的比较
2021/04/22 无线电
python实现三次密码验证的示例
2021/04/29 Python
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP
Nginx本地配置SSL访问的实例教程
2022/05/30 Servers