Back To Start Of Archive
Taken From The Forum: Help & Support for DHTML Menu Version 5+
Forum Topic: Click to view post
Last Updated: Saturday July 14 2012 - 06:07:39
problems with ie on the mac
Poster: mynci
Dated: Monday July 4 2005 - 15:05:41 BST
Hi, i have read and (i think) followed the advice on making the menu work on mac ie. unfortunately i am still having some problems.
my main problem is that the client uses mac ie and has one with mac os 9 and one with 10. the problems are much worse with the version of ie on the version 9 mac. and unfortunately i have no way of testing the code without asking the client!
i have created a test page here:
http://www.futonshop.co.uk/menutest.php
the source for this page is:
Code:
<?
ob_start();
include("../webscripts/debug.php");
//include("../webscripts/basket.php");
include("../webscripts/futonlib.php");
include("../webscripts/dblib.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Website Administration - <? echo $sitedomainname; ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<SCRIPT language=JavaScript src="milonic_src.js" type=text/javascript></SCRIPT>
<script language=JavaScript>
if(ns4)_d.write("<scr"+"ipt language=JavaScript src=mmenuns4.js><\/scr"+"ipt>");
else _d.write("<scr"+"ipt language=JavaScript src=mmenudom.js><\/scr"+"ipt>");
</script>
<SCRIPT language="JavaScript" src="admin_menu.js" type=text/javascript></SCRIPT>
<link href="text.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="720" border="0" align="center">
<tr>
<td width="200"><img src="images/logo.gif" align="top"></td>
<td width="510"> </td>
</tr>
<tr>
<td colspan="2" height="21" align="left">
<SCRIPT language="JavaScript">
with(milonic=new menuname("Main Menu")){
style=menuStyle;
screenposition="center";
alwaysvisible=1;
orientation="horizontal";
position="relative";
aI("text=Site Configuration;showmenu=SiteConfiguration;");
aI("text=Shop Maintenance;showmenu=ShopMaintenance;");
aI("text=Accounting System;showmenu=AccountingSystem;");
aI("text=Customer Management;showmenu=CustomerManagement;");
aI("text=Webhosting Tools;showmenu=WebhostingTools;");
drawMenus();
}</script>
</td>
</tr>
</table>
</body>
</html>
ob_start();
include("../webscripts/debug.php");
//include("../webscripts/basket.php");
include("../webscripts/futonlib.php");
include("../webscripts/dblib.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Website Administration - <? echo $sitedomainname; ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<SCRIPT language=JavaScript src="milonic_src.js" type=text/javascript></SCRIPT>
<script language=JavaScript>
if(ns4)_d.write("<scr"+"ipt language=JavaScript src=mmenuns4.js><\/scr"+"ipt>");
else _d.write("<scr"+"ipt language=JavaScript src=mmenudom.js><\/scr"+"ipt>");
</script>
<SCRIPT language="JavaScript" src="admin_menu.js" type=text/javascript></SCRIPT>
<link href="text.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="720" border="0" align="center">
<tr>
<td width="200"><img src="images/logo.gif" align="top"></td>
<td width="510"> </td>
</tr>
<tr>
<td colspan="2" height="21" align="left">
<SCRIPT language="JavaScript">
with(milonic=new menuname("Main Menu")){
style=menuStyle;
screenposition="center";
alwaysvisible=1;
orientation="horizontal";
position="relative";
aI("text=Site Configuration;showmenu=SiteConfiguration;");
aI("text=Shop Maintenance;showmenu=ShopMaintenance;");
aI("text=Accounting System;showmenu=AccountingSystem;");
aI("text=Customer Management;showmenu=CustomerManagement;");
aI("text=Webhosting Tools;showmenu=WebhostingTools;");
drawMenus();
}</script>
</td>
</tr>
</table>
</body>
</html>
and the sub menu code can be found here:
http://www.futonshop.co.uk/admin_menu.js
the problem on the newer mac is the menu moves itself on mouse over, jumping about 50 pixels to the left.
the problem on the older mac is far more pronounced. the top level renders albeit in the wrong place, then on mouse over it ads an extra line to the top level menu (the sub menu does not display). each time you mouse over another option in the top level menu the menu grows by an extra line.
any help will be gratefully recieved - the client is a little unhappy at the moment, thinking their website is broken!
many thanks
Poster: Ruth
Dated: Monday July 4 2005 - 17:00:41 BST
Hi,
I don't have a mac either, but usually when there are position problems and the menu in a table, it's something to do with the call for the files and the drawmenus() part. In this case it may be both
You have the menu in the table, but you have the call for the menu files in the head of the document and it calls for them to be the first thing immediately after the body tags. Something about them being built the first thing before any other html objects. Also, you have a drawmenus() in the main menu but you need one in the submenu file, too.
Also, I notice you have screenposition=center; however that will not work when putting the menu in the table since the position is relative, you also have that td coded with align=left. If you really want it in the center, then you need to make another table inside that td and center the table. So, that section would be:
Code:
<TR>
<TD align=left colSpan=2 height=21>
<table border="0" align="center" cellpadding=0 cellspacing=0>
<tr>
<td> <SCRIPT language=JavaScript>
with(milonic=new menuname("Main Menu")){
style=menuStyle;
screenposition="center";
alwaysvisible=1;
orientation="horizontal";
position="relative";
aI("text=Site Configuration;showmenu=SiteConfiguration;");
aI("text=Shop Maintenance;showmenu=ShopMaintenance;");
aI("text=Accounting System;showmenu=AccountingSystem;");
aI("text=Customer Management;showmenu=CustomerManagement;");
aI("text=Webhosting Tools;showmenu=WebhostingTools;");
drawMenus();
}</SCRIPT></td>
</tr>
</table>
</TD></TR>
<TD align=left colSpan=2 height=21>
<table border="0" align="center" cellpadding=0 cellspacing=0>
<tr>
<td> <SCRIPT language=JavaScript>
with(milonic=new menuname("Main Menu")){
style=menuStyle;
screenposition="center";
alwaysvisible=1;
orientation="horizontal";
position="relative";
aI("text=Site Configuration;showmenu=SiteConfiguration;");
aI("text=Shop Maintenance;showmenu=ShopMaintenance;");
aI("text=Accounting System;showmenu=AccountingSystem;");
aI("text=Customer Management;showmenu=CustomerManagement;");
aI("text=Webhosting Tools;showmenu=WebhostingTools;");
drawMenus();
}</SCRIPT></td>
</tr>
</table>
</TD></TR>
That would make the menu center. I also put center tags around the menu table, just a backup to make sure it centers never being able to figure out what some of the browsers are doing, especially some of the old ones. The one thing you can't do with the menu table if you want the menu to center is to code that 'second' table in which you place it width=100%, because the menu will just go to the left of that table, again. Hope that helps.
Ruth
Poster: mynci
Dated: Monday July 4 2005 - 17:23:23 BST
thanks a lot ruth, i have incorporated your suggestions, if anyone has a mac and could let me know what the menu looks like, i'd apreciate it.
the only part i wasn't sureabout was:
Quote:
You have the menu in the table, but you have the call for the menu files in the head of the document and it calls for them to be the first thing immediately after the body tags. Something about them being built the first thing before any other html objects.
how do i resolve this issue? i though that the menu had to be in the table in order to work on mac ie at all (in the faq). or have i entirely misunderstood?
many thanks
Poster: Ruth
Dated: Monday July 4 2005 - 19:20:15 BST
Hi,
Can you not put the calls for the menu files, the program files and submenu data file the first thing after the body tag? For example:
Code:
<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="sub_menu_data.js"></script> rest of stuff begins here
<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="sub_menu_data.js"></script> rest of stuff begins here
As far as I know you don't have to put the menu in a table, I think the faqs are just telling you how you have to do it, if you put it in a table so that it will work in a table on the mac ie. The advantage to putting it in a table is that if the resolution changes the menu shifts as the layout shifts. If you have it set at the top and screen position center, then you should be able to absolute position it, it would always be screenposition center no matter what the resolution.
It just depends on your layout. Do you have a page we could see?
Ruth
Poster: mynci
Dated: Tuesday July 5 2005 - 12:06:49 BST
thanks a lot, i made some changes, took it out of any tales and divs and it workd fine - this was a backend system that didnt need to be very pretty.
thanks again.
Poster: slackbladder
Dated: Tuesday July 5 2005 - 14:12:13 BST
Well done with the fixes
Try to get your client to move to firefox (or similar) - I am MAC based and used IE for ages but as Microsoft are no longer making new versions ( http://news.com.com/2100-1045_3-1017126.html ), I made the move and it's much better.
Just my 2 cents
Poster: mynci
Dated: Tuesday July 5 2005 - 14:16:27 BST
i'd love to move them slackbladder, unfortunatley the client sees the problem as 'not working' if it doesnt 'just work' on their machine. they wouldnt see changing browsers as an option, i dont think.
it is good news indeed that microsoft discontinued the browser, now if only everyone would upgrade!
Poster: slackbladder
Dated: Tuesday July 5 2005 - 14:24:32 BST
mynci wrote:
unfortunatley the client sees the problem as 'not working' if it doesnt 'just work' on their machine.
I know the feeling well! Besides imagine how many customers they would be missing out on if it didn't work on OS9 (IE)
Poster: Andy
Dated: Wednesday July 6 2005 - 12:04:54 BST
With regard to Internet Explorer for the Mac, the most important thing to remember is one of security.
More and more viruses and back doors are being developed for the Mac and as nobody is supporting IE5 anymore, it's only a matter of time before one gets developed that would affect its users.
Tell your client that they are leaving themselves wide open if they continue to use an obsolete product. Firefox is also much much better
Cheers,
Andy