jQuery 操作FrameSet

26 篇文章 0 订阅

说先上来一段 FrameSet 层级的 代码吧 
<FRAMESET name="main" frameSpacing=0 frameBorder=YES cols=180,* >
	<FRAMESET name="leftArea" frameSpacing=0 frameBorder=NO rows="700,*"  >
			<FRAME name="left" src="left.html" scrolling=no />
	</FRAMESET>
	<FRAMESET  name="rightArea" frameSpacing=0 frameBorder=NO rows="80,*" >
		<FRAME name="rightTop" src="right_top.html" scrolling=no />
		<FRAME name="CR1_TopFrame" src="right.html" scrolling=auto />
	</FRAMESET>
</FRAMESET>	
这里首先要说的是 这里需要有个name 用来找到对应的 frame ,id是可选的  


现在 假定一种情况 
要点击 left.html 页面,将里面的值传到rightTop页面去 
这是 同辈兄弟页面间的传值 
看网上的 写法是 

Javascript代码

window.parent.parent.frames["rightArea"].frames["rightTop"]
其实这么写是 错误 的 


其实根本不用找到 rightArea 这个 FrameSet ,直接 frames["rightTop"]就可以了 
这里面 爬到最顶层,直接frames[目标frame的name] 就可以了 

用jQuery的写法是

Javascript代码
jQuery(window.parent.parent.frames["rightTop"].document)

这样就可以得到 这个页面了 之后 就可以像操作 jquery 对象一样操作了 

普通 js 的写法是
Javascript代码
window.parent.parent.frames["rightTop"].方法()

这里的方法 是 目标页面内的js 方法 ,不要只写名字,一定要加上() 
而且还可以传参数 

先写这些 
以后 再补 

写完这帖子有段时间了,有用到了这里的东西,返回来看看,竟然发现自己都看不懂,先给自己两嘴巴,接下来补充点东西~ 

在得到 目标页面的JQuery对象 后通过 .find("选择器"); 就可以相应对象了~ 
Javascript代码
window.parent.parent.frames["rightTop"].find("#thisID");

原文:http://mmmzzc.iteye.com/blog/1441749


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值