- 相關(guān)推薦
用js互相調(diào)用iframe頁(yè)面的方法
最近,天天搞論文開題報(bào)告,一時(shí)技癢,再次設(shè)計(jì)Web,一下子就碰到一個(gè)問題,以前設(shè)計(jì)WEB頁(yè)的時(shí)候都是在IE里 面跑的,從來沒有考慮過firefox 更別提chrome了,可是現(xiàn)在不同了,至少我認(rèn)為不兼容Firefox的WEB頁(yè)面是極其丑陋和山寨的,所以從有個(gè)這個(gè)觀念開始,我設(shè)計(jì)頁(yè)面就開始注意 這個(gè)兼容性,而這次就碰到一個(gè)兼容性的問題,html里面有一個(gè)浮動(dòng)框架,<iframe >,可以在頁(yè)面中內(nèi)嵌入一個(gè)頁(yè)面,用來做框架頁(yè)面非常適合。
一個(gè)html頁(yè)面,分成左右兩塊,左邊為導(dǎo)航欄,右邊為需要顯示的內(nèi)容,代碼如下:
左欄的代碼為:
<IFRAME frameBorder=0 id=frmTitleLeft name=framLeft src="left.html" style="HEIGHT: 100%; width:180px;">
連接到left.html
右欄也類似,就本人所做的頁(yè)面,預(yù)覽的效果如下:
現(xiàn)在要達(dá)到什么樣的效果才能起到比較實(shí)用的效果呢,點(diǎn)擊其中的任何鏈接,都可以在右欄顯示,那么很顯然需要通過js來實(shí)現(xiàn),原始的不兼容的辦法我也不多說了,請(qǐng)大家記住以下實(shí)現(xiàn)步驟:
1,首先獲得右欄iframe對(duì)象
var frames=document.getElementById("frameid");//frameid即右欄iframe的id名
2,重置其src值
frames.src=pageurl;//pageurl即要顯示的目的頁(yè)面
這樣就實(shí)現(xiàn)了頁(yè)面的跳轉(zhuǎn)
但是還有一點(diǎn),如果想調(diào)用其中的函數(shù)就不是這么簡(jiǎn)單了
比如右欄中有一個(gè)函數(shù)right(),我要在左欄的鏈接中調(diào)用right()函數(shù),該如何實(shí)現(xiàn)呢
1,首先leftframe是內(nèi)嵌在容器頁(yè)index.html中的,因此需要先返回到index這一級(jí)別,并取得rightframe對(duì)象
var frames=window.parent.window.document.getElementById("frameid");
2,要能執(zhí)行其頁(yè)面中的函數(shù),必須要獲得window對(duì)象,這里有一個(gè)重要的對(duì)象contentWindow,獲得這個(gè)對(duì)象,即可執(zhí)行其中的函數(shù)了,如
frames.contentWindow.right();
【用js互相調(diào)用iframe頁(yè)面的方法】相關(guān)文章:
iframe子父頁(yè)面調(diào)用實(shí)例10-14
iframe里的頁(yè)面調(diào)用父窗口09-22
HTML中利用js調(diào)用php的內(nèi)容09-18
js怎么樣實(shí)現(xiàn)iframe 高度自適應(yīng)07-14
java調(diào)用的方法09-04