开发者社区> 问答> 正文

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

下面是a.html里的内容

<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script>


<div  id="wrap">
<iframe id="aaa"  src="b.html" ></iframe>
</div>

<!--w98-->



<script>
$(document).ready(function() {
$('#wrap').contents().find('.bb').html('给我变');
$('#aaa').contents().find('.bb').html('给我变');
$('#wrap').contents().find('#bb').html('给我变');
$('#aaa').contents().find('#bb').html('给我变');
});
</script>

下面是b.html里的内容

<div id="bb" class="bb" >来修改我啊</div>
问题就是我刷新a.html后,显示的文字还是“来修改我啊”,而不是“给我变”
求教这是为什么?

展开
收起
小旋风柴进 2016-03-26 08:27:37 2257 0
1 条回答
写回答
取消 提交回答
  • iframe未加载加载完造成,这点你可以在ready的回调里加入

    console.log($('#aaa').contents().find('#bb').length) //0
    可以看到
    解决办法,是注册一个iframe的loaded响应函数,等iframe加载完在改变

    $('#aaa').load(function(){
        $('#aaa').contents().find('#bb').html('给我变');
    })
    2019-07-17 19:15:04
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Delivering Javascript to World 立即下载
Javascript中的对象 立即下载
Delivering-Javascript-to-World-Plus-Dog 立即下载