亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

幾個iframe之間相互調用方法

標簽:
JavaScript

页面结构如下
<body>
<iframe name = "iframe2">
<bottom id="ok"></bottom>
<table></table>
</iframe>
<iframe name = "layer"></iframe>
</body>
我在iframe2的页面给ok绑定了一个方法 比如点击
$("#ok").on("click",function(){
console.info("######");
})
在layer页面应该怎么去触发这个事件呢?
解决办法是
parent.frames["iframe2"].$("ok").trigger("click);

备注:
window.frames用法
window.frames[]

功能:frames[]是窗口中所有命名的框架组成的数组。这个数组的每个元素都是一个Window对象,对应于窗口中的一个框架。

语法:window.frames

浏览器窗口中每个定义的框架都是frames[]数组中的元素。

假设ifr 是一个以存在的 iframe 的 ID 和 NAME 值: 获取iframe的方法有:

document.getElementById(“ifr”);

window.frames[“ifr”];

要想使用iframe内的函数,变量就必须通过第二种方法.因为它取的是一个完整的DOM模型第一种方法只是取出了一个OBJECT而已.

如果只想改变iframe的 src 或者 border , scrolling 等 attributes(与property不是一个概念,property是不能写在标签内的,比如:scrollHeight,innerHTML等),就需要用到第一种方法.

如果想取得iframe的页面(不是iframe本身),就需要使用第二种方法,因为它取得的是一个完整的DOM模型,比如想得到iframe的document.body的内容,就只能用第二种方法.

还要注意的是,如果在iframe的页面未完全装入的时候,调用iframe的DOM模型,会发生很严重的错误,所以,你要准备一个容错模式.

frames.length属性存放了frames[]数组的长度。

注:frames[]数组的元素内部还可以有框架,所以frames[i]可以有自己的frames[]数组。

实例1检测当前页面中框架个数。

代码:

<script type="text/javascript">
document.write( "框架个数:"+window.frames.length );
</script>

这段代码的效果为:框架个数:1

注:本页面中包含有一个<iframe>定义的框架。


例如树形结构图:

function init() {
var setting = {
data : {key : {title : "t"},simpleData : {enable : true}},
callback : {onClick : onTreeClick}
};
$.ajax({type : 'get',
url : "<s:property value='basePath'/>view/power/department!departjson"+ "?a=" + new Date(),
success : function(data) {
var zTreeObj=$.fn.zTree.init($("#treeDemo"), setting, eval("("+ data.valueOf() + ")"));
}
});
//显示收藏夹
showMemUsers();
//显示已选用户
showSelected();
}

function onTreeClick(event, treeId, treeNode, clickFlag) {
var level=treeNode.level;
$(window.frames["userFrame"].document).find("#chineseName").val("");
if(level==1){
$(window.frames["userFrame"].document).find("#unitId").val(treeNode.id);
$(window.frames["userFrame"].document).find("#departmentId").val("");
}else if(level==2){
$(window.frames["userFrame"].document).find("#departmentId").val(treeNode.id);
$(window.frames["userFrame"].document).find("#unitId").val("");
}
$(window.frames["userFrame"].document).find("#tagForm").submit();
}

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消