jq监听子元素被点击_jQuery获取子iframe中点击事件

博客围绕OA需求展开,要在链接后增加用户账户密码再跳转。该链接在iframe里,起初直接find报错,后用iframe.contents().find(\a\)成功获取a标签链接,实现拼接参数跳转。还介绍了contents()方法,可获取子节点构造新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 与主页面在同一个域。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值