(在同域的情况下 且在http://下测试,且最好在iframe onload加载完毕后 dosomething...)
也有用contentDocument 获取的 但是contentWindow 兼容各个浏览器,可取得子窗口的 window 对象。
contentDocument Firefox 支持,> ie8 的ie支持。可取得子窗口的 document 对象。
获取方法
var frameWin=document.getElementById('iframe').contentWindow; //window对象
var frameDoc=document.getElementById('iframeId').contentWindow.document //document对象
var frameBody=document.getElementById('iframeId').contentWindow.document.body //body对象
还有iframe.contentDocument 方法 //但是ie 6,7不支持
(但是必须在ifram框架加载完毕后获取,iframe1是iframe的name属性)
document.getElementById('iframId').οnlοad=function(){
var html= window.frames["name属性"].document.getElementById('iframe中的元素的id').innerHTML;
alert(html)
}
如果要获取iframe中的iframe
document.getElementById('iframId').οnlοad=function(){
var html= window.frames["name属性"].frames["name属性"].document.getElementById('iframe中的元素的id').innerHTML;
alert(html)
}
a、$("#iframe的ID").contents().find("#iframe中的控件ID").click();//jquery 方法1 必须在iframe加载完后才有效
b、$("#iframe中的控件ID",document.frames("frame的name").document)//方法2 必须在iframe加载完后才有效
(在同域的情况下且在http://下测试,最好是 iframe记载完毕再dosomething)
var obj=window.parent.document.getElementById('objId')
window.top 方法可以获取父级的父级的....最顶层的元素对象
$('#父级窗口的objId', window.parent.document).css('height':'height); // window可省略不写
或者
$(window.parent.document).find("#objId").css('height':'height); // window可省略不写
===================================
(经测试,在ie中最好用原生的onload事件,如果用jq的load把iframe加载完毕 有时候方法调用不到 多刷新才有效果)
a、 用contentWindow方法
document.getElementById('iframe1').οnlοad=function(){
this.contentWindow.run();
}
b、用iframes[]框架集数组方法
document.getElementById('iframe1').οnlοad=function(){
frames["iframe1"].run();
}
===================================
window.parent.attributeName; // 访问属性attributeName是在父级窗口的属性名
window.parent.Func(); // 访问属性Func()是在父级窗口的方法
$('#iframeId').load(function() { //方法1
var iframeHeight = Math.min(iframe.contentWindow.window.document.documentElement.scrollHeight, iframe.contentWindow.window.document.body.scrollHeight);
var h=$(this).contents().height();
$(this).height(h+'px');
});
$('#iframeId').load(function() { //方法2
var iframeHeight=$(this).contents().height();
$(this).height(iframeHeight+'px');
});