Javascript not working under Mac! Why O why?!

Please support our JavaScript / DHTML / AJAX advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
Reply

Join Date: Aug 2005
Posts: 4
Reputation: gaston is an unknown quantity at this point 
Solved Threads: 0
gaston gaston is offline Offline
Newbie Poster

Javascript not working under Mac! Why O why?!

 
0
  #1
Aug 4th, 2005
Hello,
I have a javascript code (a part of it is in php) that populates a pull-down menu. It works perfectly well with Explorer, Netscape and Firefox under Windows. But impossible to make it work with Explorer or Safari under Mac!!!
Is javascript different between windows and mac?
Here's the code, if anyone has the slightest idea or suggestion.

Thanks a lot in advance!

Gaston.

<SCRIPT type="text/javascript">

function MultiDimensionalArray(iRows,iCols)
{
var i;
var j;
var a = new Array(iRows);
for (i=0; i < iRows; i++)
{
a[i] = new Array(iCols);
for (j=0; j < iCols; j++)
{
a[i][j] = "";
}
}
return(a);
}

function updateDirMenu(form,groupMenu,selectedIndex,selectedGroup, startDirValue){
var numdiringroup = Array()
var dirArray=MultiDimensionalArray(35,0)
var new_index=-1;
var groupPrefs = "<?=$group_prefs?>";
var change = 0;

if (selectedGroup == undefined) {
change = 1
if (groupPrefs != "") {
selectedGroup = groupPrefs}
}


<?php
$x = 0;
$numdiringroup = 0;
//$array = array( 'list', 'of', 'elements' );
while ($x < $num_groups) {


$xx = 0;
foreach ( $filelist[$x] as $element )
{

?>

if (<?=$x?> == selectedIndex) { <?
if ($folder_prefs <> "") {
if ($element == $folder_prefs) {
print "new_index=".$xx.";";}
}
?>
} //if $x==selectedIndex

<?
$xx = $xx + 1;

++$numdiringroup;
print "dirArray[".$x."].push('$element');";
}
++$x;
print "numdiringroup.push('$numdiringroup');";
$numdiringroup = 0;
}

?>


for(i = 0; i < form.elements.length; i++){
if(form.elements[i] == groupMenu){
var dirMenu = form.elements[i+1]
break
}
}

var thelength // thelength is number of options the menu will have
thelength = numdiringroup[selectedIndex]
dirMenu.options.length = thelength

for(i=0; i<thelength; i++){ // if number of current options is less than options to be displayed, write more options
dirMenu.options[i].value=dirArray[selectedIndex][i]
dirMenu.options[i].text=dirArray[selectedIndex][i]
}

if(change == 1) {
if(selectedGroup != groupPrefs || new_index<0) {
if(thelength > 0) {
if(dirMenu.options[0].value == "Home") {
dirMenu.selectedIndex = 1
} //dirmenu
else dirMenu.selectedIndex = 0

} //if thelength
} //if selectedGroup

else dirMenu.selectedIndex = new_index
} //if change

else
for(i=0; i<thelength; i++){

if(dirMenu.options[i].value == startDirValue) {
dirMenu.selectedIndex = i}


} //for
change = 0
}


</SCRIPT>
Reply With Quote Quick reply to this message  
Join Date: Dec 2004
Posts: 4,182
Reputation: peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of peter_budo has much to be proud of 
Solved Threads: 481
Moderator
Featured Poster
peter_budo's Avatar
peter_budo peter_budo is offline Offline
Code tags enforcer

Re: Javascript not working under Mac! Why O why?!

 
0
  #2
Aug 4th, 2005
There are no difference in JavaScript between platforms. Your problem can be that Mac is running only on IE5( there has not been any upgrade for past 3 years also) and you tested on pc IE6, I beleave. Last year as school project I did website cross platform but got hell of troubles.
And Safari I don't know, I do not use Safari.
Learn to see in another's calamity the ills which you should avoid.
Publilius Syrus
(~100 BC)

LJC - London Java Community, Graduate & Undergraduate Software Development Community, JAVAWUG (Java Web User Group), The London Android Group
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 69
Reputation: bkendall is an unknown quantity at this point 
Solved Threads: 0
bkendall's Avatar
bkendall bkendall is offline Offline
Junior Poster in Training

Re: Javascript not working under Mac! Why O why?!

 
0
  #3
Aug 5th, 2005
Safari is a compliant browser so you should not have trouble getting JavaScript to work. My guess is that there is a syntax error that the other browsers are ignoring. have you tried validating the page?
Reply With Quote Quick reply to this message  
Join Date: Aug 2005
Posts: 4
Reputation: gaston is an unknown quantity at this point 
Solved Threads: 0
gaston gaston is offline Offline
Newbie Poster

Re: Javascript not working under Mac! Why O why?!

 
0
  #4
Aug 5th, 2005
Thanks peter_budo and bkendall for your suggestions.
The page has been validated with the w3c validator and it's html 4.01 validator.
I looked for a javascript validator but couldn't find any.
I also don't know where to find a previous version of explorer (version 5) to test my page. Or is there a browser that has the exact same behaviour as the Explorer 5 version?
When will all the browsers be compatible?!! (this is just a rhetoric question!)

Thanks again.

Gaston
Reply With Quote Quick reply to this message  
Join Date: May 2005
Posts: 182
Reputation: alpha_foobar is an unknown quantity at this point 
Solved Threads: 3
alpha_foobar's Avatar
alpha_foobar alpha_foobar is offline Offline
Junior Poster

Re: Javascript not working under Mac! Why O why?!

 
0
  #5
Aug 7th, 2005
For a javascript verifier, try this http://www.crockford.com/javascript/jslint.html

It can check your html as well, but its only got basic html support and hence is much stricter.

Put your js scripts in and it will tell you plenty about it. any editing you have to do to make it verify should also be done for your website to run sanely.
Reply With Quote Quick reply to this message  
Join Date: May 2005
Posts: 182
Reputation: alpha_foobar is an unknown quantity at this point 
Solved Threads: 3
alpha_foobar's Avatar
alpha_foobar alpha_foobar is offline Offline
Junior Poster

Re: Javascript not working under Mac! Why O why?!

 
0
  #6
Aug 7th, 2005
it would probably be more usefull if you ran the output of the php generation through jslint.

also, you seem to hardly ever use ';' to terminate lines... so you'll be entering lots of these to get jslint to parse your script.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the JavaScript / DHTML / AJAX Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC