为了账号安全,请及时绑定邮箱和手机立即绑定

jq的content()方法获取iframe里的内容,语法都对,但是就是没效果

jq的content()方法获取iframe里的内容,语法都对,但是就是没效果

BIG阳 2019-04-19 16:11:39
下面是a.html里的内容$(document).ready(function(){$('#wrap').contents().find('.bb').html('给我变');$('#aaa').contents().find('.bb').html('给我变');$('#wrap').contents().find('#bb').html('给我变');$('#aaa').contents().find('#bb').html('给我变');});下面是b.html里的内容来修改我啊问题就是我刷新a.html后,显示的文字还是“来修改我啊”,而不是“给我变”求教这是为什么?
查看完整描述

2 回答

?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

确实如楼上所说是iframe未加载加载完造成,这点你可以在ready的回调里加入
console.log($('#aaa').contents().find('#bb').length)//0
可以看到
解决办法,是注册一个iframe的loaded响应函数,等iframe加载完在改变
$('#aaa').load(function(){
$('#aaa').contents().find('#bb').html('给我变');
})
还有问题,可以留言
                            
查看完整回答
反对 回复 2019-04-19
?
www说

TA贡献1775条经验 获得超8个赞

在jQuery中,$(document).ready()意思是页面结构加载完成之后就开始执行,并不是在页面元素加载完成才执行的,这点要与原生js中的onload函数区分开,所以你iframe里的内容还没有加载出来之后,js就已经运行了,当然不会有显示了
                            
查看完整回答
反对 回复 2019-04-19
  • 2 回答
  • 0 关注
  • 316 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号