Important Notice: We're experiencing email notification issues. If you've posted a question in the community forums recently, please check your profile manually for responses while we're working to fix this.

On Monday the 3rd of March, around 5pm UTC (9am PT) users may experience a brief period of downtime while one of our underlying services is under maintenance.

Mozilla サポートの検索

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

詳しく学ぶ

このスレッドはアーカイブに保管されました。 必要であれば新たに質問してください。

Frame id not recognized by javascript in firefox 8.0

  • 4 件の返信
  • 2 人がこの問題に困っています
  • 3 回表示
  • 最後の返信者: cor-el

more options

I have a frameset that includes a frame with id="main" When I click a link that invokes javascript referencing top.main it comes up as undefined. This code runs perfectly well in IE, in Chrome and on Android Tablets.

I guess I will have to tell my users to use one of those browsers instead of Firefox.

The code in file tophelp.htm is:

<frameset cols="162px,*">
<frame noresize="noresize"  style= "border-right-width:thick; border-right-color:Maroon;" id="contents" src="navhelp.htm" />
<frameset rows="30px,*">
<frame frameborder=0  id="mainhd" marginheight="3" marginwidth="8" src= "Helphead.htm" />
<frame frameborder=0  id="main"   src= "Helpmain.htm" />
</frameset>
</frameset>

A JS function in this page has code:

top.main.location.href = "HelpOverview.htm"

This code generates an error: top.main is not defined.

I have a frameset that includes a frame with id="main" When I click a link that invokes javascript referencing top.main it comes up as undefined. This code runs perfectly well in IE, in Chrome and on Android Tablets. I guess I will have to tell my users to use one of those browsers instead of Firefox. The code in file tophelp.htm is: <pre><nowiki><frameset cols="162px,*"> <frame noresize="noresize" style= "border-right-width:thick; border-right-color:Maroon;" id="contents" src="navhelp.htm" /> <frameset rows="30px,*"> <frame frameborder=0 id="mainhd" marginheight="3" marginwidth="8" src= "Helphead.htm" /> <frame frameborder=0 id="main" src= "Helpmain.htm" /> </frameset> </frameset></nowiki></pre> A JS function in this page has code: <br /> <pre><nowiki>top.main.location.href = "HelpOverview.htm" </nowiki></pre> This code generates an error: top.main is not defined.

この投稿は cor-el により に変更されました

選ばれた解決策

Use name instead of id in the frame and use window.top instead of top.

You probably need to include the protocol as well.

window.top.main.location.href = "http://HelpOverview.htm";

<frameset cols="162px,*">
<frame noresize="noresize"  style= "border-right-width:thick; border-right-color:Maroon;" name="contents" src="navhelp.htm" />
<frameset rows="30px,*">
<frame frameborder=0  name="mainhd" marginheight="3" marginwidth="8" src= "Helphead.htm" />
<frame frameborder=0  name="main" src= "Helpmain.htm" />
</frameset>
</frameset>

http://forums.mozillazine.org/viewtopic.php?f=25&t=2581145

この回答をすべて読む 👍 0

すべての返信 (4)

more options

Try posting at the Web Development / Standards Evangelism forum at MozillaZine. The helpers over there are more knowledgeable about web page development issues with Firefox.
http://forums.mozillazine.org/viewforum.php?f=25
You'll need to register and login to be able to post in that forum.

more options

選ばれた解決策

Use name instead of id in the frame and use window.top instead of top.

You probably need to include the protocol as well.

window.top.main.location.href = "http://HelpOverview.htm";

<frameset cols="162px,*">
<frame noresize="noresize"  style= "border-right-width:thick; border-right-color:Maroon;" name="contents" src="navhelp.htm" />
<frameset rows="30px,*">
<frame frameborder=0  name="mainhd" marginheight="3" marginwidth="8" src= "Helphead.htm" />
<frame frameborder=0  name="main" src= "Helpmain.htm" />
</frameset>
</frameset>

http://forums.mozillazine.org/viewtopic.php?f=25&t=2581145

この投稿は cor-el により に変更されました

more options

Changing from 'id' to 'name' did the trick. Thanks.

more options

You're welcome.