开发者

Chrome: Getting iFrame and inserting into body

I've got the following code which works fine in Firefox...

if (!iFrame) iFrame = outerDoc.getElementById('_dialog_iframe');
var iFrameDoc = iFrame.contentWindow.document; // get iframe doc

and the Chrome version...

if (!iFrame) iFrame = outerDo开发者_Go百科c.getElementById('_dialog_iframe');
var iFrameDoc = iFrame.document; // get iframe doc

I'm testing the code be getting iFrameDoc.body when I run the FireFox code in Firefox it works fine. However, the Chrome code returns undefined. Why? How do I fix this so that it'll work fine in Chrome?


If the iframe element has a document property in Chrome then I'm surprised, and it's non-standard and not supported in other browsers. The standards-based property is contentDocument, and to support other browsers you can use contentWindow.document. The following will work in all major browsers:

var iFrameDoc = iFrame.contentDocument || iFrame.contentWindow.document;
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜