JS跨Frame选择元素的几种方式

本文介绍了在JavaScript中如何跨Frame选择和操作元素,包括使用Jquery选择iframe,以及如何获取iframe内的属性。虽然window.parent.frames可以访问部分属性,但获取src属性时可能返回undefined。更稳定的方法是直接操作iframe的window对象来获取或操作页面元素和调用全局变量及js方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

父文件
这里写图片描述

使用Jquery选中一个iframe:
(window.parent.frames[left]) (window.parent.frames[“left”]).attr(“name”);
但其他东西无法获取,$(window.parent.frames[“left”]).attr(“src”);输出为undefined

更为靠谱的一种形式为:

$("#left",parent.document.body)

如下取值都是可行的:

$("#left",parent.document.body).attr("id");
$("#left",parent.document.body).attr("name");
$("#left",parent.document.body).attr("src");

如果想取iframe页面上的元素,则需要:

$(window.parent.frames["left"].document).find(".year").length;

调用其他页面上的全局变量和js方法的方式:
由于全局变量和方法都是window对象的内容,所以只要获取到window对象即可:

window.parent.frames["left"].window.doingId = gid;
window.parent.frames["left"].window.onload();

可以参看:
JS在页面Frame和子Frame之间的调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值