浏览 2329 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-02-22
两种方式: 1. function include(src) { HTMLCode = '<script language="javascript" src="' + src + '"></script>'; var tags = document.getElementsByTagName("head"); var html = tags[0].innerHTML; tags[0].innerHTML = HTMLCode + html; } 2. function include(src) { var s = document.createElement('script'); s.src = src; var tags = document.getElementsByTagName("head"); tags[0].appendChild(s); } 假设动态加载的src中含有全局变量 var all=123; 测试的时候第一种方式是拿不到这个全局变量的,而第二种是可以的,但两种方式下inspect可以看到文档中均已经加载src,想请教缘由? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-02-22
“对于IE,首先 script 标签必须带 defer 属性,其次在插入时刻,innerHTML 的所属节点必须在 DOM 树中;对于 Firefox 和 Opera,在插入时刻,innerHTML 的所属节点不可以在 DOM 树中。”
innerHTML 不是标准属性,各个浏览器实现都有差异。 |
|
返回顶楼 | |
发表时间:2008-02-22
innerHTML对于head标签来说是只读的
我这里你的第一种根本插入不了script,你的可以? |
|
返回顶楼 | |
发表时间:2008-02-22
记录下:http://hi.baidu.com/jia818915/blog/item/75c2c61f4c50c161f624e485.html
|
|
返回顶楼 | |