no, non è proprio quello il problema:
Gli eventi vengono gestiti in maniera diversa a seconda dei browser, dove in internet explorer all'interno delle funzioni lanciate da un evento, trovi l'oggetto Event corrispondente all'evento in corso nella variabile globale window.event, in firefox viene passata questa variabile come ultimo argomento della funzione associata all'evento.
Ti consiglio di associare gli eventi agli elementi in questo modo:
Codice PHP:
window.onload = function(){
var x0Pic = document.getElementById('x0Pic');
x0Pic.onmouseover = function(e){
ShowDescriptionRight("1Pic", 250, e);
}
x0Pic.onmousemove = function(e){
ShowDescriptionRight("1Pic", 250, e);
}
x0Pic.onmouseout = function(){
HideDescription("1Pic");
}
//Quersto lo dovrai fare per tutti gli elementi, anziché inserirli nell'html
}
Poi modifichi ShowDescription
Codice PHP:
function ShowDescription(item, e)
{
obj=document.getElementById(item);
var evt = window.event || e;
x = evt.clientX + document.body.scrollLeft + 0; /* get the mouse left position */
y = evt.clientY + document.body.scrollTop + 15; /* get the mouse top position */
obj.style.display="block";
obj.style.left=x;
obj.style.top=y;
if (obj.innerHTML.length > 200) obj.style.width=325;
}//ShowDescription()
function ShowDescriptionCenter(item,itemwidth, e)
{
obj=document.getElementById(item);
var evt = window.event || e;
x = evt.clientX + document.body.scrollLeft + 0; /* get the mouse left position */
y = evt.clientY + document.body.scrollTop + 15; /* get the mouse top position */
obj.style.display="block";
obj.style.left=x-(itemwidth/2);
obj.style.top=y;
if (obj.innerHTML.length > 200) obj.style.width=325;
if (obj.style.width < itemwidth ) obj.style.width=itemwidth;
}//ShowDescriptionCenter()
function ShowDescriptionLeft(item,itemwidth, e)
{
obj=document.getElementById(item);
var evt = window.event || e;
x = evt.clientX + document.body.scrollLeft + 0; /* get the mouse left position */
y = evt.clientY + document.body.scrollTop + 15; /* get the mouse top position */
obj.style.display="block";
obj.style.left=x-itemwidth;
obj.style.top=y;
if (obj.innerHTML.length > 200) obj.style.width=325;
if (obj.style.width < itemwidth ) obj.style.width=itemwidth;
}//ShowDescriptionLeft()
Il resto dovrebbe essere a posto