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;
精彩评论