Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is window.frameElement (for same-origin iframes) supported across all browsers?

I have googled as much as I can and I'm not sure of the support for the document of an iframe getting the id of itself in the parent window: window.frameElement.id. There are so many browsers that it's hard to test them all and nothing online seems to have any information. I'm specifically wondering about:

Safari iOS Safari Windows Phone IE IE 7, 8, 9, 10, 11

(I tested Firefox and Chrome and they both worked).

EXAMPLE IFRAME CONTENT

<!DOCTYPE HTML>
<html>
    <head></head>
<body>
        <script type="text/javascript">
            var owner = window.frameElement;
            var thisIsWhoIsCalling = ( owner !== null ) ? owner.id : null;
            window.parent.SomeJavaScriptObject.someFunction( thisIsWhoIsCalling );
        </script>
    </body>
</html>
like image 897
Don Rhummy Avatar asked Oct 01 '22 23:10

Don Rhummy


1 Answers

I happened to look for the same information. Here's what I have found.

https://developer.mozilla.org/en-US/docs/Web/API/Window.frameElement

I have tested some browsers in addition to the MDN doc, and confirmed that it is supported by IE7+, Safari, Firefox, Chrome. So pretty much all browsers.

I haven't tested on IE6-, but I guess you don't need to care.

like image 165
Joon Avatar answered Oct 05 '22 23:10

Joon