网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网页制作 > 心得技巧
网页制作:Dreamweaver教程,FrontPages教程,Javascript教程,HTML教程,CSS教程,心得技巧,DHTML教程,网页特效,Discuz!论坛
本月文章推荐
.如何避免IE7中Zoom功能放大滚动条.
.左右图片循环滚动停顿一下后继续.
.XHTML头部Doctype声明必不可少!.
.HTML 限制文本框只能输入数字 on.
.谈谈xhtml的结构标签.
.浅议Web网页Form表单设计技巧.
.网页中添加调用qq或者msn聊天窗口.
.初学网站制作须知道什么是静态网.
.网页设计统计报告:五年以来网页.
.网页制作关于代码的18个小技巧.
.制作网页需要学习哪些技术?.
.慎用 XHTML 标签的自关闭写法.
.DIV不是万能膏药.
.网站301重定向代码集锦.
.提高网页下载速度的网页制作方法.
.网页制作中经常用到的六则代码技.
.网页中插入视频播放代码全集.
.网页自动转向代码.
.打开新的窗口与保住页面的referr.
.每个网站都必须具备的几个重要文.

让innerHTML中的script脚本执行起来

发表日期:2006-6-7


在我们使用AJAX的时候,经常要用到innetHTML来更新对象的内容,但是对于更新的<script>脚本程序浏览器却无法执行,我前面AJAX初学常遇问题解答这篇文章曾提到过这个问题,它不执行的原因是:<script>标签只在浏览器第一次文档加载中被解析,下面介绍怎么样让<script>跑起来。

分析问题
既然<script>只在文档加载中才被解析,那么我就得调用document.write()方法来重新加载一次,但是这样的话原来页面的内容也会被覆盖掉了,所以不得不用IFRAME把document.write()装载起来。

解决问题
 var jsCode = 需要执行的JS代码
 var jsIframe = document.createElement("iframe");
 jsIframe.style.display = "none";//把jsIframe隐藏起来
 document.body.appendChild(jsIframe);
 with(window.frames[window.frames.length - 1]){
  document.open();
  document.write(jsCode); //执行JS代码
  document.close();
 }
 document.body.removeChild(jsIframe);//执行后删除iframe对象
这里需要注意一个问题,因为jsCode是在iframe中运行,所以所有的页面元素都在iframe父对象之下,要调用页面元素对象必须得用 parent.obj 这种方式。

另外一种方法:

用dom动态创建一个script对象
var script=document.createElement("script");
script.src="XXXX.js";
document.body.appendChild(script);

上一篇:教你如何在自己的主页上制作P2P网络电视 人气:8266
下一篇:使用雅虎实现免费站内搜索 人气:8386
浏览全部innerHTML的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐