Hi, this is my first time using the forums, so my apologies if I don't include something in my explanation I should have.
I'm having a problem when using the PHP require command to call up a navigation menu of rollover images on a separate page. When I call up the menu once on a page there is no problem, but as soon as I include a second instance of the same menu (i.e. one at the top of the page and one at the bottom - to save having to scroll up to move between pages) the rollover images no longer load the second image when the mouse pointer comes into contact with them.
Note: I'm using Dreamweaver 8 mainly in design mode to code all of this for me as I know only a little about the inner workings of HTML and PHP (though enough to get by in most basic situations).
The menu page is in the same folder as the content page I'm loading it into. So I'm using:
Quote:
|
<?php require("page_menu.htm"); ?>
|
to call up the menu. This works fine if I include it only once on the page, but if included twice (with no other changes made to the code) it no longer works. I assume it's a problem with the code on the menu page itself - perhapse that part of it comes into conflict with itself if run twice? The code for the menu page is:
Quote:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
<onLoad="MM_preloadImages('/media/page_numbers/page_numbers_1_on.jpg','/media/page_numbers/page_numbers_2_on.jpg','/media/page_numbers/page_numbers_3_on.jpg','/media/page_numbers/page_numbers_4_on.jpg','/media/page_numbers/page_numbers_5_on.jpg','/media/page_numbers/page_numbers_9_on.jpg','/media/page_numbers/page_numbers_8_on.jpg','/media/page_numbers/page_numbers_7_on.jpg','/media/page_numbers/page_numbers_6_on.jpg','/media/page_numbers/page_numbers_10_on.jpg')">
<div align="center"><img src="/media/page_numbers/page_numbers_title.jpg" width="40" height="25"><a href="sketches01.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 1','','/media/page_numbers/page_numbers_1_on.jpg',1)"><img src="/media/page_numbers/page_numbers_1_off.jpg" alt="Page 1" name="Page 1" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 2','','/media/page_numbers/page_numbers_2_on.jpg',1)"><img src="/media/page_numbers/page_numbers_2_off.jpg" alt="Page 2" name="Page 2" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 3','','/media/page_numbers/page_numbers_3_on.jpg',1)"><img src="/media/page_numbers/page_numbers_3_off.jpg" alt="Page 3" name="Page 3" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 4','','/media/page_numbers/page_numbers_4_on.jpg',1)"><img src="/media/page_numbers/page_numbers_4_off.jpg" alt="Page 4" name="Page 4" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 5','','/media/page_numbers/page_numbers_5_on.jpg',1)"><img src="/media/page_numbers/page_numbers_5_off.jpg" alt="Page 5" name="Page 5" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 6','','/media/page_numbers/page_numbers_6_on.jpg',1)"><img src="/media/page_numbers/page_numbers_6_off.jpg" alt="Page 6" name="Page 6" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 7','','/media/page_numbers/page_numbers_7_on.jpg',1)"><img src="/media/page_numbers/page_numbers_7_off.jpg" alt="Page 7" name="Page 7" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 8','','/media/page_numbers/page_numbers_8_on.jpg',1)"><img src="/media/page_numbers/page_numbers_8_off.jpg" alt="Page 8" name="Page 8" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 9','','/media/page_numbers/page_numbers_9_on.jpg',1)"><img src="/media/page_numbers/page_numbers_9_off.jpg" alt="Page 9" name="Page 9" width="25" height="25" border="0"></a><a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Page 10','','/media/page_numbers/page_numbers_10_on.jpg',1)"><img src="/media/page_numbers/page_numbers_10_off.jpg" alt="Page 10" name="Page 10" width="25" height="25" border="0"></a></div>
</html>
|
I wondered if the Java script was interfering with itself when run twice, but I have a different "site index" menu on the same page which uses identical Java script to run; and since the site index menu continues to work perfectly well with both the single and double inclusions of the navigation menu I presume thats not the problem. My only guess is that there is some conflict I don't know of in the workings of loading the same rollover images twice... but this now a way beyond my knowledge of HTML and PHP code.
I desperately don't want to have to create a separate copy of the navigation menu (e.g. page_menu_top.htm and page_menu_bottom.htm files that are exactly the same in content) as this would completely defeat the point for me of being able to just update one file and not having to remember to update any other instance of the same menu each time.
Any help you can provide me with, to enable to include the menu twice without the rollover images breaking, would be appreciated! Thank you
