hejsa alle - forsøger at lave et image-rollover system, hvor et billede automatisk vises, når markøren køres over et specielt stykke tekst ... mit script virker fint i IE og Opera, men ikke Mozilla - nogen JS hajer, der vil kigge på det, og fortælle mig hvad der er galt...
Ifølge JS console i Firefox, ligger problem i linje 57,58... altså
"
x = (document.layers) ? e.pageX : event.clientX
y = (document.layers) ? e.pageY : event.clientY
"
anyway - her følger koden...
<head>
<script language=javaScript>
<!-- Beginning of JavaScript -
var x,y,a,b,e,timer,thisbox,isbox,urlimg
var posleftvorher
var box
if (document.layers) {
var left_pos=".left=";
var top_pos=".top=";
var doc="document.";
var stl="";
}
if (document.all) {
var left_pos=".pixelLeft=";
var top_pos=".pixelTop=";
var doc="";
var stl=".style";
}
function openbox(thisbox) {
isbox = thisbox
if(document.layers) {
box = document.popupbox
box.visibility="visible"
document.popupbox.document.write("<img src='"+thisbox+"'>")
document.popupbox.document.close()
document.popupbox.left=x+25
document.popupbox.top=y
}
if(document.all) {
box = document.all.popupbox.style
box.visibility="visible"
popupbox.innerHTML="<img src='"+thisbox+"'>"
eval(doc+"popupbox"+stl+left_pos+(x+25))
eval(doc+"popupbox"+stl+top_pos+y)
timer=setTimeout("openbox(isbox)",50)
}
}
function closebox(){
clearTimeout(timer)
box.visibility="HIDDEN"
}
function handlerMM(e){
var x,y,e
x = (document.layers) ? e.pageX : event.clientX
y = (document.layers) ? e.pageY : event.clientY
}
if (document.layers){
document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = handlerMM;
// - End of JavaScript - -->
</script>
<STYLE>
.mainstyle {
position: absolute;
font-family:Verdana;
color:dddddd;
font-size:40px;
}
A {
color:dddddd;
text-decoration:none;
}
</STYLE>
</head>
<body>
<div id="main" class="mainstyle">
<a href="#" onMouseOver="openbox('SE/A3618.gif')" onMouseOut="closebox()">rollover test.</a></div>
<div id="popupbox" style="position:absolute"></div>
</body>
--