您当前的位置:首页 > 文章 > 使用parent.layer.open(

使用parent.layer.open()打开页面如何调用子页面的方法

作者:勤学路无边 时间:2024-03-06 阅读数:149 人阅读
我的问题:
A 页面 包含iframeB页面,从iframe B页面使用parent.layer.open 打开一个iframe弹层C页面,我知道这时弹层是在A页面打开的,现在我想在layer打开的iframeC页面中调用B页面的方法该如何做?

官网上使用layer.open打开页面,调用子页面的方法是这样的
layer.open({
type: 2,
content: ‘test/iframe.html’,
btn: [“按钮1”, “按钮2”],
btn1: function(layero, index){
var iframeWin = window[layero.find(‘iframe’)[0][‘name’]]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.test.method1();
},
btn2: function(layero, index){
var iframeWin = window[layero.find(‘iframe’)[0][‘name’]]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.test.method2();
},
}
});

我使用parent.layer.open()打开子页面
var layerIndex=parent.layer.open({
type: 2,
content: ‘test/iframe.html’,
btn: [“按钮1”, “按钮2”],
btn1: function(layero, index){
var iframeWin = parent.window[‘layui-layer-iframe’ + layerIndex]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.test.method1();
},
btn2: function(layero, index){
var iframeWin = window[layero.find(‘iframe’)[0][‘name’]]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.test.method2();
},
}
});

子页面中这样写
var test = {
method1: function (index) {
console.log(“方法一的内容”)
},
method2: function (index) {
console.log(“方法二的内容”)
}
}

好记性不如烂笔头,这里记录一下。亲测有用


————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/weixin_45286267/article/details/103461711

本站大部分文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。

如果侵犯了您的权益请来信告知我们删除。邮箱:1451803763@qq.com