matej
06-02-2006, 02:39 PM
I have a image (bkgImage) with mapped links, an area link calling:
onmouseover="Display('divPop');"
onmouseout="Hide1(event,'divPop');"
Display sets display for divPop to block, that's ok.
Primarily divPop is display:none, and it has an image inside:
<div style="left:150px; top:60px;" id="divPop" class="tip"><img src="img/image.gif" id="divPopImage" OnMouseOut="Hide2(event,'divPop');"></div>
I have this script in the head:
function Hide1(e,element) {
//alert(e.relatedTarget.id);
if ((e.toElement.id || e.relatedTarget.id) != 'divPopImage') {
Hide(element);
}
}
function Hide2(e,element) {
//alert(e.relatedTarget.id);
if ((e.toElement.id || e.relatedTarget.id) == 'bkgImage') {
Hide(element);
}
}
Hide function just sets display back to none, that's ok also.
The original idea was to prevent bubbling (and because the area link and divPop are overlapping, it flickered because of mouseout/mouseover conflict), and also to not hide the divPop if you left the area link and entered divPop....but I complicated it a little.
However, it now works as it should in IE, but not in Mozilla - divPop just stays open, when it should close, like in IE!
If you uncommented the alerts in the functions you would see that the value of id goes thorugh - so mozilla "knows", where the mouse goes to... it just doesn't react afterwards :(
I hope I described the situation clearly enough.
Help?
Thanks!
onmouseover="Display('divPop');"
onmouseout="Hide1(event,'divPop');"
Display sets display for divPop to block, that's ok.
Primarily divPop is display:none, and it has an image inside:
<div style="left:150px; top:60px;" id="divPop" class="tip"><img src="img/image.gif" id="divPopImage" OnMouseOut="Hide2(event,'divPop');"></div>
I have this script in the head:
function Hide1(e,element) {
//alert(e.relatedTarget.id);
if ((e.toElement.id || e.relatedTarget.id) != 'divPopImage') {
Hide(element);
}
}
function Hide2(e,element) {
//alert(e.relatedTarget.id);
if ((e.toElement.id || e.relatedTarget.id) == 'bkgImage') {
Hide(element);
}
}
Hide function just sets display back to none, that's ok also.
The original idea was to prevent bubbling (and because the area link and divPop are overlapping, it flickered because of mouseout/mouseover conflict), and also to not hide the divPop if you left the area link and entered divPop....but I complicated it a little.
However, it now works as it should in IE, but not in Mozilla - divPop just stays open, when it should close, like in IE!
If you uncommented the alerts in the functions you would see that the value of id goes thorugh - so mozilla "knows", where the mouse goes to... it just doesn't react afterwards :(
I hope I described the situation clearly enough.
Help?
Thanks!