同域jQuery(跨)iframe操作DOM(实例讲解)
内容摘要
frame目前还是比较流行的,许多地方都通过它来实现特殊的情况。比如说传统的上传、select在ie6下、代理、跨域等等。今天呢,简要的记述一下跨iframe的相关操作,主要是用jQuery操
文章正文
frame目前还是比较流行的,许多地方都通过它来实现特殊的情况。比如说传统的上传、select在ie6下、代理、跨域等等。今天呢,简要的记述一下跨iframe的相关操作,主要是用jQuery操作DOM结构方面。
复制代码 代码如下:
<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">
复制代码 代码如下:
$('#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="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:代码
复制代码 代码如下:
<!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>
代码注释