Avatar billede pelskee Nybegynder
03. marts 2006 - 11:26 Der er 8 kommentarer og
1 løsning

funktion der udskifter billede on mouseover

jeg har fået lavet en funktion der udskifter billedet i en ramme når man kører musen over billedet men billedet kommer op i lille format og fylder ikke hele rammen som hovedbilledet (300x300)



<script language="javascript">

    function vis(b)
    {
        for (i = 1; i <= 3; i++)
        {
            var navn = "b" + i;
//            alert(navn);
//            alert(document.getElementById(navn + "_div").src);
            document.getElementById(navn + "_div").style.display = "none";
            document.getElementById(navn + "_img").style.display = "none";
        }
        var navn2 = "b" + b;
        document.getElementById(navn2 + "_div").style.display = "block";
        document.getElementById(navn2 + "_img").style.display = "block";
    }

</script>



<img src="images/produktbilleder/<%=(rsProduktbilleder.Fields.Item("Filename").Value)%>" width="40" height="40" onMouseOver="java script:vis(<%=startrw+1%>);" onMouseOut="java script:vis(1);">

Link: http://www.teeshop.dk/webshop/specifik.asp?IDprodukt=130
Avatar billede mclemens Nybegynder
03. marts 2006 - 11:47 #1
Skift:
            document.getElementById(navn + "_div").style.display = "none";
            document.getElementById(navn + "_img").style.display = "none";

til:

if(document.getElementById(navn + "_div")){
            document.getElementById(navn + "_div").style.display = "none";
            document.getElementById(navn + "_img").style.display = "none";}
Avatar billede mclemens Nybegynder
03. marts 2006 - 11:52 #2
... eller
    for (i = 1; i <= 3; i++)
... til
    for (i = 1; i <= 2; i++)
Avatar billede mclemens Nybegynder
03. marts 2006 - 11:55 #3
Øverste af de to løsninger anbefales da du kan bruge samme script til alle sider uden at du får en javascript fejl.

... fejlen sker ved at den prøver på at forbinde sig med en _div og _img der ikke er der: b1_div , b2_div , b3_div kører den f.eks. igennem og da b3_div ikke findes sker fejlen...
Avatar billede pelskee Nybegynder
03. marts 2006 - 12:09 #4
stadig samme fejl (billedet man kører over bliver ikke stort)

<script language="javascript">

    function vis(b)
    {
        for (i = 1; i <= 3; i++)
        {
            var navn = "b" + i;
//            alert(navn);
//            alert(document.getElementById(navn + "_div").src);
if(document.getElementById(navn + "_div")){
            document.getElementById(navn + "_div").style.display = "none";
            document.getElementById(navn + "_img").style.display = "none";}
        }
        var navn2 = "b" + b;
if(document.getElementById(navn + "_div")){
            document.getElementById(navn + "_div").style.display = "none";
            document.getElementById(navn + "_img").style.display = "none";}
    }

</script>
Avatar billede mclemens Nybegynder
03. marts 2006 - 12:42 #5
Du skulle jo ikke sætte
if(document.getElementById(navn + "_div")){
}omkring dem begge ;)


<script language="javascript">

    function vis(b)
    {
        for (i = 1; i <= 3; i++)
        {
            var navn = "b" + i;
//            alert(navn);
//            alert(document.getElementById(navn + "_div").src);
if(document.getElementById(navn + "_div")){
            document.getElementById(navn + "_div").style.display = "none";
            document.getElementById(navn + "_img").style.display = "none";}
        }
        var navn2 = "b" + b;
        document.getElementById(navn2 + "_div").style.display = "block";
        document.getElementById(navn2 + "_img").style.display = "block";
    }

</script>
Avatar billede pelskee Nybegynder
03. marts 2006 - 14:27 #6
dope - tak for hjælpen!
point...
Avatar billede mclemens Nybegynder
03. marts 2006 - 15:26 #7
svar ;)
Avatar billede mclemens Nybegynder
03. marts 2006 - 15:29 #8
P.s. der sker også en lille fejl i firefox for at rette så skift:

                        <tr>
                          <td width="330" align="left" valign="top" id="b1_div" style="display:block;"><img src="images/produkt/teeshop098.jpg" width="300" height="300" style="border:1px solid #cccccc;display:block;" id="b1_img"></td>
                         
                          <td width="330" align="left" valign="top" id="b2_div" style="display:none;"><img src="images/produktbilleder/teeshop098_2.JPG" width="300" height="300" style="border:1px solid #cccccc;display:none;" id="b2_img"></td>
                         
                        </tr>




over til:

<tr>
<td>

<div id="b1_div" style="display: block;" align="left" valign="top" width="330"><img src="123_files/teeshop098.jpg" style="border: 1px solid rgb(204, 204, 204); display: block;" id="b1_img" height="300" width="300"></div>

<div id="b2_div" style="display: none;" align="left" valign="top" width="330"><img src="123_files/teeshop098_2.JPG" style="border: 1px solid rgb(204, 204, 204); display: none;" id="b2_img" height="300" width="300"></div>

</td>
</tr>
Avatar billede pelskee Nybegynder
03. marts 2006 - 16:43 #9
okay tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester