同域jQuery(跨)iframe操作DOM

frame目前还是比较流行的,许多地方都通过它来实现特殊的情况。比如说传统的上传、select在ie6下、代理、跨域等等。今天呢,简要的记述一下跨iframe的相关操作,主要是用jQuery操作DOM结构方面。

 

[javascript] view plain copy
  1. <iframe src="a.php" id="aa"></iframe>   
  2. <iframe src="b.php" id="bb"></iframe>   
  3. <input type="button" id="read-aa" value="读取iframe #aa">   
  4. <input type="button" id="write-aa" value="写入iframe #aa">  

[javascript] view plain copy
  1. $('#read-aa').click(function()   
  2. {   
  3.     var v=$('#aa').contents().find('body').html();   
  4.     alert(v);   
  5. });   
  6. $('#write-aa').click(function()   
  7. {   
  8.     
  9.     $('#aa').contents().find('div').append('<hr>这是index.php操作aa.php写入的内容');   
  10. });  


主要方法是 contents(),读取iframe。

 

2、iframe跨父框架操作iframe

[javascript] view plain copy
  1. <!DOCTYPE html>   
  2. <meta charset="utf-8">   
  3. <title>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</title>   
  4. <script src="public/jQuery.js"></script>   
  5. <script>   
  6. $(function()   
  7. {   
  8.     $('#read-parent-aa').click(function()   
  9.     {   
  10.         var v=$('body',parent.document).find('#aa').contents().find('body').html();   
  11.         alert(v);   
  12.     });   
  13.     $('#write-parent-aa').click(function()   
  14.     {   
  15.         $('body',parent.document).find('#aa').contents().find('div').append('<hr>这是bb.php操作aa.php写入的内容');   
  16.     });   
  17. });   
  18. </script>   
  19. <div>   
  20. 这是iframe #bb里的内容   
  21. </div>   
  22. <input type="button" id="read-parent-aa" value="跨父读取iframe #aa">   
  23. <input type="button" id="write-parent-aa" value="跨父写入iframe #aa">  


HTML:代码

[javascript] view plain copy
  1. <!DOCTYPE html>  
  2. <meta charset="utf-8">  
  3. <title>jQuery操作iframe</title>  
  4. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>  
  5. <iframe src="a.php" id="aa"></iframe>  
  6. <iframe src="b.php" id="bb"></iframe>  
  7. <input type="button" id="read-aa" value="读取iframe #aa">  
  8. <input type="button" id="write-aa" value="写入iframe #aa">  
  9. <script>   
  10. $(function()  
  11. {  
  12.     $('#read-aa').click(function()  
  13.     {  
  14.         var v=$('#aa').contents().find('body').html();  
  15.         alert(v);  
  16.     });  
  17.     $('#write-aa').click(function()  
  18.     {  
  19.           
  20.         $('#aa').contents().find('div').append('<hr>这是index.php操作aa.php写入的内容');  
  21.     });  
  22. });  
  23. </script>  


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值