PDA

View Full Version : Why my frame doesn't work on Safari 3.0.4?


joecool2005
02-05-2008, 03:19 PM
Hi,

I want to build a simple frame.
The following code works fine on IE6 and IE7 but doesn't work on Safari 3.0.4.
It showed me this error message on Safari 3.0.4.
"TypeError: Value undefined (result of expression top.frames["toolbar"].doSomething2) is not object."
Why?

Plz help
Thx
Joe

default.htm

<frameset id="frameset1" rows="119,*" name="frameset1" border="0" frameSpacing="0" frameBorder="no">
<frame name="toolbar" id="toolbar" src="button.htm" marginheight="0" marginwidth="0" scrolling="no" NORESIZE>
<frame name="top_main" id="top_main" src="button2.htm" marginheight="0" marginwidth="0" NORESIZE>
</frameset>


button.htm

<html>

<head>
<script language="JavaScript">
function doSomething2(){
alert("this is my document");
}
</script>
</head>
<body>
my page
</body>

</html>


button2.htm

<HTML>
<script language="JavaScript">
try{

top.frames["toolbar"].doSomething2()
}
catch(e){alert(e);}
</script>
<body>
button2<br />
</body>
</HTML>

Want Oyster
02-27-2008, 05:59 PM
It appears that Safari 3.0.4 does not like "toolbar" as the name of a frame. It also doesn't like "statusbar" or "bookmarksbar". If you can, rename your frame to something else. It's not clear if this is a bug or a feature.