您的位置:首页 > Web前端 > JQuery

同域jQuery(跨)iframe操作DOM

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

 

[javascript] view plaincopy

<iframe src="a.php" id="aa"></iframe>   

<iframe src="b.php" id="bb"></iframe>   

<input type="button" id="read-aa" value="读取iframe #aa">   

<input type="button" id="write-aa" value="写入iframe #aa">  

[javascript] view plaincopy

$('#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

[javascript] view plaincopy

<!DOCTYPE html>   

<meta charset="utf-8">   

<title>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</title>   

<script src="public/jQuery.js"></script>   

<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:代码

[javascript] view plaincopy

<!DOCTYPE html>  

<meta charset="utf-8">  

<title>jQuery操作iframe</title>  

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>  

<iframe src="a.php" id="aa"></iframe>  

<iframe src="b.php" id="bb"></iframe>  

<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>  

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: