14. november 2005 - 16:41
Der er
4 kommentarer og
1 løsning
skift billede ved onclik
Hej jeg her en menu der er opbygget af billeder, jeg
har et javascript der bytter om på et billederne i menuen når man trykker på et af dem, sådan så det billede man har trykket på er aktivt. Dette virker. Jeg kunne dog godt tænke mig at der også kommer rollover og out på min menu.
Problemet er at når man så trykker på et billede i menuen for at gøre det aktivt så ændres billedet igen da jeg jo også har roll out på billedet. Mit spg er derfor om man kan have onclik mousover og mouse out samtidig når der skal byttes om på billeder eller om der er en smart anden metode der oftes bruges??
MVH
Vat69
14. november 2005 - 17:28
#1
du kan prøve:
<script type="text/javascript">
var preloadArr = ["bld_over.png","bld_out.png","bld_click.png"];
var tempArr = new Array();
for (var i = 0;i<preloadArr.length;i++) {
tempArr[i] = new Image();
tempArr[i].src = preloadArr[i];
}
var activeImg,defaultSrc;
function changeImage(img,src,force) {
force = (typeof force == "undefined") ? false : force;
if (!(img == activeImg) || force) {
img.src = src;
}
}
function changeActiveImage(img,src1,dSrc) {
if (activeImg) {activeImg.src = defaultSrc;}
if (img == activeImg) {
activeImg = null;
changeImage(img,defaultSrc);
}
else {
activeImg = img;
defaultSrc = dSrc;
changeImage(img,src1,true);
}
}
</script>
<img src="bld.png" onmouseover="changeImage(this,'bld_over.png');" onmouseout="changeImage(this,'bld_out.png');" onclick="changeActiveImage(this,'bld_click.gif','bld.png');">
<img src="bld.png" onmouseover="changeImage(this,'bld_over.png');" onmouseout="changeImage(this,'bld_out.png');" onclick="changeActiveImage(this,'bld_click.gif','bld.png');">
<img src="bld.png" onmouseover="changeImage(this,'bld_over.png');" onmouseout="changeImage(this,'bld_out.png');" onclick="changeActiveImage(this,'bld_click.gif','bld.png');">
Du kan også vælge at have vidt forskellige billeder - bare husk at preload de billeder, som skal vises ved onmouseover/out og onclick oppe i preloadArr-arrayet (ligesom de andre)
21. november 2005 - 10:45
#2
Hej skovenborg og tak for svaret, jeg mente man fik en lille mail når der var en der svarede på ens spg, men jeg har ikke fået noget så derfor er jeg først inde og kigge nu sorry, jeg prøver lige det du forslår her i dag. takker :)
20. december 2005 - 19:11
#3
Jeg har endnu ikke fået kigget på det her, jeg må lige få mig strammet an her i julen og tjekket det så du kan få dinne point SORRY (og god jul)