同域jQuery(跨)iframe操作DOM(示例代码)

(编辑:jimmy 日期: 2024/10/9 浏览:2)

frame目前还是比较流行的,许多地方都通过它来实现特殊的情况。比如说传统的上传、select在ie6下、代理、跨域等等。今天呢,简要的记述一下跨iframe的相关操作,主要是用jQuery操作DOM结构方面。
复制代码 代码如下:
<iframe src="/UploadFiles/2021-04-02/a.php"><iframe src="b.php"><input type="button" id="read-aa" value="读取iframe #aa">
<input type="button" id="write-aa" value="写入iframe #aa">

复制代码 代码如下:
$('#read-aa').click(function()
{
    var v=$('#aa').contents().find('body').html();
    alert(v);
});
$('#write-aa').click(function()
{

    $('#aa').contents().find('div').append('<hr>这是index.php操作aa.php写入的内容');
});

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

2、iframe跨父框架操作iframe
复制代码 代码如下:
<!DOCTYPE html>
<meta charset="utf-8">
<title>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</title>
<script src="/UploadFiles/2021-04-02/jQuery.js"><script>
$(function()
{
    $('#read-parent-aa').click(function()
    {
        var v=$('body',parent.document).find('#aa').contents().find('body').html();
        alert(v);
    });
    $('#write-parent-aa').click(function()
    {
        $('body',parent.document).find('#aa').contents().find('div').append('<hr>这是bb.php操作aa.php写入的内容');
    });
});
</script>
<div>
这是iframe #bb里的内容
</div>
<input type="button" id="read-parent-aa" value="跨父读取iframe #aa">
<input type="button" id="write-parent-aa" value="跨父写入iframe #aa">

HTML:代码
复制代码 代码如下:
<!DOCTYPE html>
<meta charset="utf-8">
<title>jQuery操作iframe</title>
<script src="/UploadFiles/2021-04-02/jquery.min.js"><iframe src="a.php"><iframe src="b.php"><input type="button" id="read-aa" value="读取iframe #aa">
<input type="button" id="write-aa" value="写入iframe #aa">
<script>
$(function()
{
 $('#read-aa').click(function()
 {
  var v=$('#aa').contents().find('body').html();
  alert(v);
 });
 $('#write-aa').click(function()
 {

  $('#aa').contents().find('div').append('<hr>这是index.php操作aa.php写入的内容');
 });
});
</script>