roll over -> zwei separate bilder gleichzeitig ändern
daisy
- html
hallo zusammen,
ich bitte um hilfe, da ich langsam verzweifel, und
wahrscheinlich ist's ganz einfach.
ein enter-button ist als roll-over (enter wechselt in enter_on) definiert,
es soll sich aber dabei auch ein zweites bild (logo in logo_on)ändern.
ich habe schon nach hilfe gesucht, und ich muss wohl ein mouseover
und -on noch mal im img-tag einfügen, aber irgendwie funktionierts
nicht.
hier mein quellcode (ich bin ne ziemliche newbiene)
für jegliche hilfestellung tausend dank vorab!
<body onLoad="MM_preloadImages('index/enter_on.jpg')">
<div id="Layer1"
style="position:absolute; width:200px; height:115px;
z-index:1; left: 0px; top: 0px;">
<img src="index/muster.jpg" width="496" height="1024"></div>
<div id="Layer2" style="position:absolute; width:106px; height:45px; z-index:2; left: 415px; top: 309px;">
<img src="index/logo.jpg" name="logo" width="106" height="45" id="logo"></div>
<div id="Layer3" style="position:absolute; width:109px; height:12px; z-index:3; left: 348px; top: 438px;">
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('enter','','index/enter_on.jpg',1)">
<img src="index/enter.jpg" name="enter" width="109" height="12" border="0"></a></div>
<div id="Layer4" style="position:absolute; width:145px; height:34px; z-index:4; left: 324px; top: 519px;">
<img src="index/require.jpg" name="require" width="145" height="34" id="require"></div>
<div id="Layer5" style="position:absolute; width:101px; height:8px; z-index:5; left: 418px; top: 597px;">
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('get_flash','','index/get_flash_on.jpg',0)">
<img src="index/get_flash.jpg" name="get_flash" width="101" height="8" border="0"></a></div>
Hello,
ich bitte um hilfe, da ich langsam verzweifel, und
wahrscheinlich ist's ganz einfach.
im Prinzip schon, wenn da nicht all dieser Macromedia Code ist, durch den ich mich jetzt durchwerkeln darf...
Im Endeffekt sind aber alle Bausteine schon da, du musst nur entsprechende Aufrufe ergänzen.
<body onLoad="MM_preloadImages('index/enter_on.jpg')">
Okay, fügen wir da mal pro Forma ein Preload für das andere Bild hinzu
<body onLoad="MM_preloadImages('index/enter_on.jpg'); MM_preloadImages('index/logo_on.jpg')">
<img src="index/logo.jpg" name="logo" width="106" height="45" id="logo"></div>
<img src="index/enter.jpg" name="enter" width="109" height="12" border="0"></a></div>
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('enter','','index/enter_on.jpg',1)">
das hier sind dann die relevanten Zeilen für den Swap, wie MM_swapImgRestore arbeitet weiß ich gerade nicht, deshalb kann es sein, dass sich das zweite Bild bei dir nicht zurückverwandelt...Genau so wenig weiß ich, was '' und "1" im Aufruf des swap bewirken.
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('enter','','index/enter_on.jpg',1);MM_swapImage('logo','','index/logo_on.jpg',1)">
MfG
Rouven
liebe community,
ich würde diese problem gerne nochmal hilfesuchend zur diskussion stellen:
es funktioniert, allerdings ist es tatsächlich so, das sich beim rollover
von "enter" beide bilder ändern wie gewünscht, aber sich enter-on
dann nicht mehr zurückverwandelt. viel. klärt der quellcode
von Macromedia zu swapImage auf...?
kann mir jemand nochmals helfen..?
merci und grüße
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>