Rumah  >  Artikel  >  hujung hadapan web  >  js调用父框架函数与弹窗调用父页面函数的简单方法

js调用父框架函数与弹窗调用父页面函数的简单方法

高洛峰
高洛峰asal
2016-12-08 11:59:331771semak imbas

调用父级中的 aaa的函数

子页面中:

onclick="window.parent.frames.aaa()"

   

父页面中:

function aaa()
{
alert(‘bbbbb');
}

   

frame框架里的页面要改其他同框架下的页面或父框架的页面就用parent

window.opener引用的是window.open打开的页面的父页面。

window.frames对象可以引用iframe里的页面,也可以引用frameset里的页面.

可以这样

window.frames[0].document.getElementById(‘xx');

   

可以这样

window.frames[0].document.body.innerHTML;
 
frm = window.parent.window.frames[‘uploadFrame'];
frmDocument = frm.document;
frm.sb(3); //sb 是uploadFrame页面里的一个函数

   

对于firefox

如果你遇到报错:parent.document.frames has no properties

换为如下代码就可以了,这个代码IE,ff兼容. frm = window.parent.window.frames[‘uploadFrame'];其实 frames 集合并不是挂在 document 而是挂在 window 对象下.

注意这样修改frame里的页面有限制,就是必须是同域下的,否则无法访问

如果是同一域下,但是子域名不同,那么涉及到的js,html文件都加上一句。

document.domain = xxx.com [这里填写你的域名]
 
document.getElementById(‘iframeid').contentWindow.document.getElementById(‘someelementid');

   

js弹窗页面后调用父页面函数

(例如:调用父页面函数test2())
window.opener.test2();

框架子页面调用上一个页面方法

(例如:上一页面的框架frame名为menuBar,调用onhook()函数)
window.top.frames["menuBar"].onhook();

js弹窗页面调用父页面框架子页面函数

(如:弹窗页面调用,frame名为menuBar)
window.opener.top.frames['menuBar'].onhook();


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn