Dumb Frames Question

Having problems with DHTML Menu? There is usually somebody here who knows the answer.
Post Reply
Lara Rupinski
Beginner
Beginner
Posts: 8
Joined: Mon Jul 25, 2005 9:25 pm

Dumb Frames Question

Post by Lara Rupinski »

I love your navigation, but I've hit a stumbling block. I am using Version 5 with frames. I have it working perfect except for one page. The body of the frame is another frame set. Is there a way to have the body navigation go 'over' another frameset?
User avatar
Ruth
 Team
 Team
Posts: 8763
Joined: Thu May 15, 2003 5:02 am
Location: Yucaipa, CA
Contact:

Post by Ruth »

Hi Lara,

I'm sorry but I'd need to see the page, I'm not visualizing what you mean. :oops:

Ruth
Lara Rupinski
Beginner
Beginner
Posts: 8
Joined: Mon Jul 25, 2005 9:25 pm

Re: Nested Frames

Post by Lara Rupinski »

Unfortunately I don't have a way to send you the pages.

I'm using nested framesets. The top frameset is the navigation and body. The nested frame (with another top and body) is located in the bo :?: dy.

Does this help explain?
User avatar
Ruth
 Team
 Team
Posts: 8763
Joined: Thu May 15, 2003 5:02 am
Location: Yucaipa, CA
Contact:

Post by Ruth »

Hi Lara,

In order to see what the problem is I have to have the layout. I can make the pages and work on it if you'll post the layout here. I'd need the frameset[s] coding. i.e.

Code: Select all

<HTML>
<HEAD>
 
  <TITLE>Please title this page. </TITLE>
</HEAD>
<FRAMESET ROWS="28%,72%">
  <FRAME SRC="main_top.html">
  <FRAME SRC="main_bottom.html">
</FRAMESET>

<NOFRAMES>
<BODY>
<P>
</BODY></NOFRAMES></HTML>
And I'd also need your coding for the pages with the menu and the various menu_data file codes. The pages don't have to have anything on them, I just need the layout and data files so I can make the pages and work on it.

Ruth
Robobar
Beginner
Beginner
Posts: 4
Joined: Thu Oct 20, 2005 1:44 pm
Location: France

Post by Robobar »

Hello,
i've got the same trouble, attempting to include a frameset in another one...

My first frameset load the menu header in the top frame, and another page in the body frame :

Code: Select all

<frameset framespacing="0" border="0" frameborder="0" rows="38,*">
  <frame name="header" scrolling="no" noresize src="menu_site/header.htm">
    <frame name="body" src="actu.php">
  </frameset>
  <noframes>
    <body>
    <p>This page uses frames, but your stone-aged browser doesn't support them.</p>
    </body>
  </noframes>
</frameset>
The file header.htm include this code :

Code: Select all

<script type="text/javascript" src="/menu_site/milonic_src.js"></script>
<script type="text/javascript">
if(ns4)_d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenuns4.js><\/scr"+"ipt>");
  else _d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenudom.js><\/scr"+"ipt>");
</script>
<script language=Javascript src="/menu_site/menu_data_header.js" type=text/javascript></script>
<script language=Javascript src="/menu_site/mm_navframe.js" type=text/javascript></script>
With any standard page (in the body frame) containing

Code: Select all

	<script type="text/javascript" src="/menu_site/milonic_src.js"></script>	
	<script	type="text/javascript">
	if(ns4)_d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenuns4.js><\/scr"+"ipt>");		
	  else _d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenudom.js><\/scr"+"ipt>"); 
	</script>
	<script type="text/javascript" src="/menu_site/menu_data_body.js"></script>	
everything looks ok, but if i tri to include à frameset page in the body frame :

Code: Select all

<frameset rows="115,*" frameborder="NO" border="0" framespacing="0">
  <frame src="disco_header.php" name="body" scrolling="NO" noresize >
  <frame src="studio.php" name="disco_body">
</frameset>
the submenus never appears...
The file disco_header.php include the code :

Code: Select all

	<script type="text/javascript" src="/menu_site/milonic_src.js"></script>	
	<script	type="text/javascript">
	if(ns4)_d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenuns4.js><\/scr"+"ipt>");		
	  else _d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenudom.js><\/scr"+"ipt>"); 
	</script>
	<script type="text/javascript" src="/menu_site/menu_data_body.js"></script>	
<script language="javascript" type="text/javascript">
If i include this code in the frameset page :

Code: Select all

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
	<script type="text/javascript" src="/menu_site/milonic_src.js"></script>	
	<script	type="text/javascript">
	if(ns4)_d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenuns4.js><\/scr"+"ipt>");		
	  else _d.write("<scr"+"ipt type=text/javascript src=/menu_site/mmenudom.js><\/scr"+"ipt>"); 
	</script>
	<script type="text/javascript" src="/menu_site/menu_data_body.js"></script>	
</head>
<frameset rows="115,*" frameborder="NO" border="0" framespacing="0">
  <frame src="disco_header.php" name="body" scrolling="NO" noresize >
  <frame src="studio.php" name="disco_body">
</frameset>

<noframes>
<body>
</body></noframes>
the submenus open fine, but the pages disco_header.php & studio.php don't...
Any idea of how i could workaround this problem?
(excuse for my bad English).
Stephan
Robobar
Beginner
Beginner
Posts: 4
Joined: Thu Oct 20, 2005 1:44 pm
Location: France

Post by Robobar »

No idea ???
User avatar
Ruth
 Team
 Team
Posts: 8763
Joined: Thu May 15, 2003 5:02 am
Location: Yucaipa, CA
Contact:

Post by Ruth »

Hi Stephan,

Sorry it's been so long, I've been away.

As far as I know you cannot do what you want using two framesets. I'm not sure what you want as the end result, however there is a way to use the menu and to have that second frameset. Instead of using two different framesets you would change the first frameset to a regular page with a two row table top row would have the menu, and the bottom row would have an iframe in which your actu.php with the frameset is loaded. Using that layout you can just use a regular menu, since it will drop over an iframe.

You can either put the main menu into the top table row, or you could just set the position of the menu within the menu...i.e. top=1;left=1; where 1 is wherever you want it to be placed. With this you would use target=x if you want the link to open in one of the frames, i.e. the body frame from the frameset. If you want it to open in the full iframe you'd use target=name of iframe.

The following would be your main page [in place of your main frameset]

Code: Select all

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
	<title>Untitled</title>
	
</head>

<body>
<SCRIPT type="text/javascript" src="milonic_src.js"></SCRIPT>
  <SCRIPT type="text/javascript"> 
   if(ns4)_d.write("<scr"+"ipt type=text/javascript src=mmenuns4.js><\/scr"+"ipt>");       
     else _d.write("<scr"+"ipt type=text/javascript src=mmenudom.js><\/scr"+"ipt>"); 
   </SCRIPT>
  <SCRIPT type="text/javascript" src="menu_data.js"></SCRIPT>
<table width="100%" height="100%" border="1" bordercolor="#ff0000" cellpadding="0" cellspacing="0">
<tr>
       <td height="38px"><script>

	function openIFrame(IFrameID, URL){
ifId=gmobj(IFrameID)
ifId.location.href=URL // Opera Bug Fix. ifId.src=URL
}

</script></td>
</tr>
<tr>
       <td><iframe width="100%" height="100%" id="tempiframe" name="tempiframe" src="actu.php" align="left"  frameborder="0" scrolling=yes> </iframe></td>
</tr>
</table>

</body>
</html>
The actua.php page is

Code: Select all

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
	<title>Untitled</title>
	  

</head>
<frameset rows="115,*" frameborder="1" border="1"  framespacing="2"> 
  <frame src="disco_header.php" name="header_set2" scrolling="NO" noresize > 
  <frame src="studio.php" name="body"> 
</frameset> 
<body>
</body>
</html>
The menu data file for opening the pages in the body frame would have an aI code such as the following

Code: Select all

aI("text=Licenses;url=mylicenses.php;target=body;");
If you want it to open in the iframe just substitute target=tempiframe; for target=body; If your link is to a page from offsite you can either open it in a frame or the iframe or in a new window, target=new; or target=blank;

Hope this helps.

Ruth
Robobar
Beginner
Beginner
Posts: 4
Joined: Thu Oct 20, 2005 1:44 pm
Location: France

Post by Robobar »

Thanks a lot, it's exactly what I was trying to do...
That's great !!!
Post Reply