如何实现JavaScript中跨兄弟iframe的函数调用?
- 内容介绍
- 相关推荐
本文共计226个文字,预计阅读时间需要1分钟。
python简化后的伪代码兄弟iframe调用方法 + 弟兄iframe + var ifreamId=window.frameElement.window.frameElement.id || '';var url='urlifreamId=' + ifreamId;父层使用parent.layer.open方法打开窗口 + 父层使用parent.layer.open方法打开窗口
兄弟ifream的方法调用
兄弟ifream A
var ifreamId = window.frameElement && window.frameElement.id || ''; var url = 'url?ifreamId='+ifreamId; parent.layer.open({ title: "title", content: [url], type: 2 });
兄弟ifream A 使用parent.layer.open方法打开兄弟ifream B
注:type:2 弹框加载ifream,在url后面加参数,把ifream A的id传给ifream B
兄弟ifream B
var ifreamWindowId = GetQueryString("ifreamName") parent.document.getElementById(frDetailWindowId).contentWindow.fn(); /* * 获取地址栏参数 */ function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r != null) return unescape(r[2]); return null; }
parent.document.getElementById(frDetailWindowId).contentWindow.fn(); 这里的fn就是ifream A的方法,这样就实现了兄弟ifream直接的通信。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。
本文共计226个文字,预计阅读时间需要1分钟。
python简化后的伪代码兄弟iframe调用方法 + 弟兄iframe + var ifreamId=window.frameElement.window.frameElement.id || '';var url='urlifreamId=' + ifreamId;父层使用parent.layer.open方法打开窗口 + 父层使用parent.layer.open方法打开窗口
兄弟ifream的方法调用
兄弟ifream A
var ifreamId = window.frameElement && window.frameElement.id || ''; var url = 'url?ifreamId='+ifreamId; parent.layer.open({ title: "title", content: [url], type: 2 });
兄弟ifream A 使用parent.layer.open方法打开兄弟ifream B
注:type:2 弹框加载ifream,在url后面加参数,把ifream A的id传给ifream B
兄弟ifream B
var ifreamWindowId = GetQueryString("ifreamName") parent.document.getElementById(frDetailWindowId).contentWindow.fn(); /* * 获取地址栏参数 */ function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r != null) return unescape(r[2]); return null; }
parent.document.getElementById(frDetailWindowId).contentWindow.fn(); 这里的fn就是ifream A的方法,这样就实现了兄弟ifream直接的通信。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

