本文主要來講述一下 iframe 的用法與注意事項(xiàng):
好多同志對(duì) iframe 是如何控制的,并不是十分了解,基本上還處于一個(gè)模糊的認(rèn)識(shí)狀態(tài).
注意兩個(gè)事項(xiàng),ifr 是一個(gè)以存在的 iframe 的 ID 和 NAME 值:
document.getElementById(“ifr”);
window.frames[“ifr”];
要想使用iframe內(nèi)的函數(shù),變量就必須通過第二種方法.因?yàn)樗〉氖且粋€(gè)完整的DOM模型(不知道這樣說對(duì)不對(duì)).第一種方法只是取出了一個(gè)OBJECT而已.
如果只想改變iframe的 src 或者 border , scrolling 等 attributes(與property不是一個(gè)概念,property是不能寫在標(biāo)簽內(nèi)的,比如:scrollHeight,innerHTML等),就需要用到第一種方法.
如果想取得iframe的頁面(不是iframe本身),就需要使用第二種方法,因?yàn)樗〉玫氖且粋€(gè)完整的DOM模型,比如想得到iframe的document.body的內(nèi)容,就只能用第二種方法.
還要注意的是,如果在iframe的頁面未完全裝入的時(shí)候,調(diào)用iframe的DOM模型,會(huì)發(fā)生很嚴(yán)重的錯(cuò)誤,所以,你要準(zhǔn)備一個(gè)容錯(cuò)模式.
下面是示例,一個(gè)是aa.htm,一個(gè)是bb.htm,請(qǐng)先考到本地在運(yùn)行,原因不用我在說了吧!
aa.htm
Untitled Page
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
bb.htm
sub frame
I'm a sub frame!
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]