![Firefox logo](https://assets-prod.sumo.prod.webservices.mozgcp.net/media/uploads/products/2020-04-14-08-36-13-8dda6f.png)
Frame id not recognized by javascript in firefox 8.0
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.
Ti ṣàtúnṣe
Ọ̀nà àbáyọ tí a yàn
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
Ka ìdáhùn ni ìṣètò kíkà 👍 0All Replies (4)
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.
Ọ̀nà àbáyọ Tí a Yàn
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>
Ti ṣàtúnṣe
Changing from 'id' to 'name' did the trick. Thanks.
You're welcome.