iframe とフレームセットにネストされたフレームにある HTML 要素を javascript で取得しようとしています。HTML 構造は次のようになります。
<iframe id="central_iframe" name="central_iframe" (...)>
<frameset cols="185, *" border="0" framespacing="0" frameborder="0">
<frame src="/subdomain" name="SideFrame" id="SideFrame" (...)>
以前は、次のようにしました。
myIframe = document.getElementById('central_iframe');
mySideFrame = myIframe.contentDocument.getElementById('SideFrame');
myElement = mySideFrame.contentDocument.getElementById('iWantToGrabThis');
ただし、myIframe.contentDocument が null を返すため、ここでは機能しません。一方、myIframe.contentWindow は、プロパティをまったく持たないウィンドウを返します (したがって、myIframe.contentWindow.document は未定義です)。同様に、試してみると
central_iframe.SideFrame
また、プロパティをまったく持たないウィンドウも返されます。
編集: このページは私のものではないため、ソースを変更できません。私はそれと対話しようとしているだけです。
Chrome 開発者ツールでテストを行っています。GeckoFX でも同じ結果が得られました。どんな助けでも大歓迎です。