您现在的位置是: 软件 > 设计在线 > 网页陶吧 > 技术平台 > HTML学习 > 正文


-Win xp中的多种网络
-试验试验试验试验
-用Freehand实现位图矢量化
-网络电话面面观

快速精通FRAME(下)
2001-03-14· ·听风编译··yesky

上一页  1 2 3 4 5  

  用脚本控制浮动FRAME

  用脚本控制普通FRAME与浮动FRAME的方法基本相同,唯一的差别是浮动FRAME按<IFRAME>出现的顺序定义索引位置。如果FRAMEs.length不为0,就表示可以安全地处理浮动FRAME。比如说,在下面的代码中,如果存在叫做floater的浮动FRAME,链接就指向它;否则就指向"_top":

<IFRAME name="floater" src="trog.htm" width=200 height=200></IFRAME>

<A href="grot.html" target="floater" onClick="if (!self.FRAMEs.length)
  this.target='_top'">See grot.htm</A>


  带有浮动FRAME的Web页面是FRAME文档的parent窗口,因此,多个浮动FRAME仍然可以通过parent.FRAME数组去访问每一个FRAME。

  预防脚本编程错误

  尽管FRAME是HTML的一个稳定规范说明,但DOM模型只把它们当做HTML元素而不是窗口,因此围绕FRAME的脚本编程并不是能很周全地定义。这个不足导致了当装载FRAME时会发生一些脚本执行方面的冲突。

  立即修改FRAME内容的脚本经常会产生错误。原因在于:浏览器通常是先执行脚本命令,然后在按照src所示装入页面内容。

  解决方法很直接,就是判断FRAME内容是否装载完毕。有一个好的处理技巧是以HTML页面开始所有的FRAME,由它象主FRAMESET报告装载请看。比如说,有一个FRAMESET页面,要等装载完所有的FRAME后才能执行函数goToIt(),那么就将下面的JavaScript程序段放进FRAMESET文档中:

countDown=FRAMEs.length;
function soundOff() {
 countDown--;
 if (countDown==0) {
  goToIt();
  }
 }


  然后,在每个FRAME页面的<BODY>标记中设置上onLoad="parent.soundOff()"。当FRAME页面装载并执行soundOFF()后,等到countDown 为0时,就表示FRAME完全装载完毕。

  总结

  FRAME是双刃剑,使用不好会造成混乱的站点结构和外观,使用得当将大大方便用户的操作方式以及形成清晰的页面风格。相信你看完本文后,会对FRAME有了更亲切的认识。

上一页  1 2 3 4 5  

■ 相关内容
 用JavaMail写简易电子邮件发送系统
 通过例程分析状态条用法
 PWIN98营造JSP环境及建立数据查询
 用XML数据岛解决用户界面问题
 NT无盘工作站安装IE5多用户上网
 3DS MAX 高级实例篇
 Flash5 ActionScript 应用教程
 快速精通FRAME(上)
 客户机/服务器应用开发
 WEB服务器配置全功略
 具有WAP和HTML功能的BENEFON Q
 HTML技术点滴
 用HTML编写应用程序(一)
感谢 访问天极网,如果您觉得该文章涉及版权问题,请看这里!