problems with ie on the mac

Having problems with DHTML Menu? There is usually somebody here who knows the answer.
Post Reply
mynci
Advanced
Advanced
Posts: 11
Joined: Fri Aug 27, 2004 12:39 pm

problems with ie on the mac

Post by mynci »

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: Select all

<?
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">&nbsp;</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
User avatar
Ruth
 Team
 Team
Posts: 8763
Joined: Thu May 15, 2003 5:02 am
Location: Yucaipa, CA
Contact:

Post by Ruth »

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: Select all

 <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
mynci
Advanced
Advanced
Posts: 11
Joined: Fri Aug 27, 2004 12:39 pm

Post by mynci »

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:
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
User avatar
Ruth
 Team
 Team
Posts: 8763
Joined: Thu May 15, 2003 5:02 am
Location: Yucaipa, CA
Contact:

Post by Ruth »

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: Select all

<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
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
mynci
Advanced
Advanced
Posts: 11
Joined: Fri Aug 27, 2004 12:39 pm

Post by mynci »

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.
slackbladder
Super Advanced
Super Advanced
Posts: 72
Joined: Fri Jul 01, 2005 3:04 pm

Post by slackbladder »

Well done with the fixes :D

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 :)
mynci
Advanced
Advanced
Posts: 11
Joined: Fri Aug 27, 2004 12:39 pm

Post by mynci »

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!
slackbladder
Super Advanced
Super Advanced
Posts: 72
Joined: Fri Jul 01, 2005 3:04 pm

Post by slackbladder »

mynci wrote:unfortunatley the client sees the problem as 'not working' if it doesnt 'just work' on their machine.
:lol: :lol: I know the feeling well! ;) Besides imagine how many customers they would be missing out on if it didn't work on OS9 (IE) :P :lol: :lol:
User avatar
Andy
Milonic
Milonic
Posts: 3308
Joined: Sun May 19, 2002 8:23 pm
Location: Menu Developer
Contact:

Post by Andy »

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
Post Reply