jQuery获取子iframe中点击事件

今天OA里有个需求,要在一个链接后,增加当前用户的账户密码,再跳转。

打开页面查看源码,发现,这个链接在iframe里,以为能够根据iframe直接find出来

试了试。报错:Uncaught TypeError: parent.triggerMouseupHandle is not a function

网上找了下。

iframe.contents().find("a"),是能成功获取a标签链接,拼接参数再跳转。

$("#iframe").contents().find("a").bind("click",function(){
	window.open($(this).attr("href")+"&username="+username+"&password="+pwd);
	return false;
})

当然也能干其他的很多事情。比如往iframe插入内容等。

大概理解了下contents()方法,直接获取代码文本,构造新的jQuery对象,就能做一系列操作了。

 

附查到的contents()方法

contents() 方法获得匹配元素集合中每个元素的子节点,包括文本和注释节点。

详细说明

如果给定表示 DOM 元素集合的 jQuery 对象,.contents() 方法允许我们检索 DOM 树中的这些元素的直接子节点,并用匹配元素构造新的 jQuery 对象。.contents() 和 .children() 方法类似,不同的是前者在结果 jQuery 对象中包含了文本节点以及 HTML 元素。

.contents() 方法也可以用于获得 iframe 的内容文档,前提是该 iframe 与主页面在同一个域。

posted @ 2018-11-20 16:18  微木Vmumu  阅读(5514)  评论(0)    收藏  举报