Mám rád čistý kód, takže dělám, co můžu, abych se vyhnul nežádoucím globálním proměnným JavaScriptu. Původně jsem si myslel, že keys(window)
by mi dalo window
vlastnosti unikají, ale to nefungovalo, protože prohlížeče vracely různé výsledky, takže jsem přešel na použití IFRAME
pro porovnání výchozích klíčů vlastností okna.
Když jsem poprvé vyzkoušel tuto metodu, dostal jsem chybnou chybu o IFRAME
contentWindow
prvku vlastnost je null
. Fuj. Netrvalo dlouho přijít na to proč: Musíte počkat, dokud nebude IFRAME
se načetl, aby získal contentWindow
:
var iframe = document.createElement('iframe'); iframe.onload = function() { // contentWindow is set! }; iframe.src = 'about:blank'; document.body.appendChild(iframe);
Samozřejmě budete chtít přidat onload
událost před nastavením src
. Pokud použijete load
událost pro kontrolu contentWindow
nemovitosti, budete v podnikání!