问题描述
我有一个Iframe.html文件:
<body onload="alert('frame 1 loaded');">
<div> This is frame 1 content </div>
<a id="a1" href="Sample.html"> click</a>
</body>
Sample.html
<body>
<ul id="list1">
<li name="one">one</li>
<li name="two">two</li>
</ul>
然后我将iframe形式称为test.html文件:
<script type="text/javascript" src="jquery-1.5.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var i=10;
$("#frame1").ready(function () {
$('#frame1').contents().find('#a1').click(function() {
alert("Hello");
$('#frame1').attr('src', $('#frame1').contents().find('#a1').attr("href"));
$('#frame1').load();
});
$('#frame1').contents().find('#a1').click();
</script>
</head>
<body onload="handleMainOnload();">
<!--iframe id="frame1" src="about:blank"/-->
<iframe id="frame1" src="iframe.html"/>
</body>
现在,我尝试使用iframe中加载的URL的内容,即test.html中的Sample.html,如下所示:
$('#frame1').contents().find('#list1 li[name=one]').click(function() {
alert(" Clicking list....");
});
$('#frame1').contents().find('#list1 li[name=one]').click();
但这是行不通的。请您从Test.html告诉我如何使用Sample来访问Sample.html文件内容,例如(id,name,class等),该文件内容是使用JQuery加载到iframe.html中的。 请帮忙。
谢谢Kamakshi
1楼
Sangeet Menon
0
2011-03-31 08:24:07
要访问HTML内含的iframe中的任何文档,请使用以下页面:
<html>
....
<body>
<iframe id='myFrame' name='myFrame' src='someUrl'>
</body>
</html>
您可以使用以下脚本进行访问
myFrame.document.getElementById('elementID');
确保提供用于访问框架本身的名称 (此处为:myFrame)。 elementID是iframe中加载的html / url中任何元素的ID
2楼
Kamakshi
0
已采纳
2011-04-12 12:02:37
<html>
<head>
<title>Main Frame 2 Title </title>
<script type="text/javascript" src="jquery-1.5.1.min.js"></script>
<script type="text/javascript">
------
------
alert("frame ready");
var $value1 = $frame.contents().find('#list1 li[name=one]').html() ;
alert("loaded + " + $value1);
$frame.contents().find('#list1 li[name=one]').click(function() {
alert("About + clicked");
});
$frame.contents().find('#list1 li[name=one]').click();
}); });
</script>
</head>
<body>
<iframe id="frame1" src="sample.html" />
如果我直接给iframe src=sample.html
而不是使用另一个文件进行重定向(即src=iframe.html
)并将Sample.html与父文件(test.html)放在同一域中,则此方法效果很好。