layui里 同级兄弟layer里的iframe方法调用

比如我们有一个页面A,然后页面B和C是其子页面,在页面A中打开B页面,然后咋B中用parent.layer.open,打开C页面,这样B和C就是A页面下的同级(兄弟)页面(也可以是在A中直接打开B和C)。
其实就是在打开的时候设置id,这个id会是layeriframe外面一层div的id,获得它自然能够获得其中的iframe

A中打开B
layer.open({
               id:"layer-iframe-B",   //此处与添加layer的id一样,由于两页面不会同时打开,所以暂时不会有问题
               type: 2,
               title:"页面B",
               area: ['650px', '600px'],
         
               content:'B.html',
    });
 在B里,在A页面中打开C
parent.layer.open({
               id:"layer-iframe-C",
               type: 2, 
               title:"页面B", 
               area: ['650px', '600px'], 
                content:'C.html', 

            
           });

然后这样C调用B中的方法

var frame=window.parent.document.getElementById("layer-B").getElementsByTagName('iframe')[0];
frame.contentWindow.method();

这里可能还有其它的方法。如果有更好的办法希望大佬指教一下,哈哈

其实关于iframe之间的交互调用,一个是要理清页面的层级关系,然后找到通过某种方式,比如id或者序号等方式,基本上就能得到那个页面对象,然后进行操作

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章