jquery如何获取iframe的document对象

2025-02-02 07:59:48
推荐回答(3个)
回答1:

1、你取得iframe的document的前提为这个iframe的地址是你域内的页面,
比如你设src为百度,取这个iframe的document时就会报拒绝访问的错误
2、我试过了 document.getElementById('myf').contentWindow.document 在ie与谷歌都行的
3、document.frames('iframename').document 这个方法只能在ie下面取得到
4、用火狐的firebug看看吧,有什么错都会显示出来,莫名其妙的事情什么时候都可能发生,
有时我直接取取window都报undefined

回答2:

试试这样写:

$('#frameID').load(function () {
    $('#frameID').contents().find('a');//以iframe中找元素a为例
});

回答3:

W3C的标准告诉我们,可以通过Dom对象的contentDocument属性来返回文档对象。

var doc = document.getElementById('mainFrame' ).contentDocument

IE8开始支持,如果你的项目不用兼容IE6,IE7的话使用这种方式最好。

IE6,IE7需要如此访问

var doc = document.frames['mainFrame'].document;

兼容方式:

var doc = document.getElementById('mainFrame' ).contentDocument || document.frames['mainFrame'].document;

以上是Javascript原生方法:

使用Jquery则简单些

$("iframe").contents().find("selector")