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();
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)