Avatar billede krel Nybegynder
17. september 2007 - 18:20 Der er 39 kommentarer og
1 løsning

onmouseout vs. onmousedown

Jeg sidder og roder lidt med disse funktioner, men kan ikke helt få det til at virker som jeg gerne vil have det til...

jeg har et billede:
<img border="0" src="da/01/00.png" onmouseover="style.cursor='hand';src='01/00_.png';" onmouseout="src='01/00.png'; onmousedown="src='01/00_.png';" alt="">

får så skert det at når man peger på billedet laver det min hover-effekt, og n¨år musen fjernes så bliver billedet normalt igen.. men så ville jeg gerne have det sådan at hover-effekten blev hvis nu man trykker på et billede...??

/kristian
Avatar billede w13 Novice
18. september 2007 - 14:24 #1
Ja? Du skal bare skrive det rigtigt. :)

<img border="0" src="da/01/00.png" onmouseover="style.cursor='hand';src='01/00_.png';" onmouseout="src='01/00.png'" onmousedown="src='01/00_.png'" alt="">

I øvrigt snyder du kun dig selv ved at sætte "alt" til blank.
Avatar billede krel Nybegynder
18. september 2007 - 19:23 #2
hvordan det?? (alt="")
Avatar billede w13 Novice
18. september 2007 - 19:28 #3
alt="" svarer til bare slet ikke skrive "alt". Din side bli'r jo ikke bedre af det. Men har du fået onmousedown til at fungere?
Avatar billede krel Nybegynder
18. september 2007 - 19:32 #4
forresten skal det lige nævnes at siden ikke skiftes hvor billederne er der laver alt det onmouseXXXX altså linket billeder linker til åbnes i en anden ramme...

har noget at sige? skal man så over i javascript fora t få billedet til at skifte når man har trykket på det...?
Avatar billede krel Nybegynder
18. september 2007 - 19:33 #5
nej det vil ikke
Avatar billede krel Nybegynder
18. september 2007 - 19:34 #6
>> alt="" ved w3.org validering kræves der et alt-tag så derfor dette tomme tag...
Avatar billede w13 Novice
18. september 2007 - 19:49 #7
Jeg tror ikke, det bliver et problem, men jeg er ikke sikker på, jeg forstår.

Ja, w3.org har ikke sat deres validator til at tjekke for tomme alt-tags, hvilket må siges at være en fejl. Der er jo en grund til, validatoren vil have at det skal være der. Så at gøre det tomt, forbedrer ikke din side.
Avatar billede krel Nybegynder
18. september 2007 - 19:55 #8
jeg har delt min index-side op i to rammer en med topbanner7grafik og så en ramme til al navigation... i toppen har jeg så 5 menu-billeder hvor jeg gerne vil have at når musen kører over laves en hovereffekt, denne hover-effekt ønsker jeg så frem igen når man klikker på et af menu-billederne... (siden skifter ikke!, det gør den side i nederste ramme)

eks.

man klikker på menu1 og derved beholdes hover-effekten på menu1 herefter vælger man at pege på menu2 (hover-effekt på menu2, mens menu1 stadig har sin hovereffekt da det var sidste billede der har været trykket på. så trykkes på menu3 og derved bliver menu1 'alm' igen og menu3 beholder hover-effekt......?

forståeligt eller helt helt sort.
Avatar billede w13 Novice
18. september 2007 - 20:00 #9
Ok. Men kan du ikke lave det med den kode, jeg gav, da?
Avatar billede krel Nybegynder
18. september 2007 - 20:06 #10
nej desværre ikke når jeg peger på billedet laver den hover effekt, men beholder den ikk når jeg klikker...

jeg prøve at skrive onclick i stedet for men det hjalp heller ingen ting.. ;*(
Avatar billede krel Nybegynder
18. september 2007 - 20:08 #11
måske jeg bare SKAL ud i noget javascript, for vil faktisk gerne hav to billeder (i forskellige rammer til at skifte når musen trykkes ned (klikkes) på et billede med link...
Avatar billede w13 Novice
18. september 2007 - 20:53 #12
Jamen onmouseover/onmouseout/onclick/onmousedown/osv. er jo javascript.
Avatar billede krel Nybegynder
18. september 2007 - 21:12 #13
hmm okay trode bare at sådanne altid startede med noget <script type=text/javascript>og sluttede med </script> ...

tror lige jeg prøver at tegne et billede:

MENU1          MENU2          MENU3          MENU4          MENU5





menua          menub          menuc          menud          menue

hover-effekt ønskes på MENUx
onmousedown ønskes på MENUx og tilsvarende menuX..

har prøvet ved at give mine billeder 'name's men det fik jeg ikke helt til at fungere..

kan vi prøve at skrive noget sammen?
Avatar billede w13 Novice
18. september 2007 - 21:31 #14
Må jeg se din nuværende kode for menupunkterne/billederne?
Avatar billede krel Nybegynder
18. september 2007 - 22:18 #15
her komme hele koden for den side der er menuen:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-language" content="da">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link rel="stylesheet" type="text/css" href="../style/style.css">
<link rel="shortcut icon" href="../grafik/firma.ico">
<link rel="icon" href="../grafik/firma.ico">
<script type="text/javascript" language="javascript1.2">
//form tags to omit in NS6+:
var omitformtags=["input", "textarea", "select"]

omitformtags=omitformtags.join("|")

function disableselect(e){
if (omitformtags.indexOf(e.target.tagName.toLowerCase())==-1)
return false
}

function reEnable(){
return true
}

if (typeof document.onselectstart!="undefined")
document.onselectstart=new Function ("return false")
else{
document.onmousedown=disableselect
document.onmouseup=reEnable
}
</script>
<base target="MAIN">
</head>
<body>
<div align="center">
<table style="background-image:url('../grafik/baggrund.gif')" border="0" width="710px" id="TOP" cellspacing="0" cellpadding="0">
    <tr>
        <td width="5px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px">
        <a href="../da/firma/index.asp?la=da&page=firma">
        <img border="0" src="menu1.png" onmouseover="style.cursor='hand';src='01/00_.png';" onmouseout="src='01/00.png';" onmousedown="src='01/00_.png';" alt=""></a></td>
        <td width="100px" height="25px">
        <a href="../da/lys/index.htm?la=da&page=lys">
        <img border="0" src="menu2.png" onmouseover="style.cursor='hand';src='02/00_.png';" onmouseout="src='02/00.png';" onmousedown="src='02/00_.png';" alt=""></a></td>
        <td width="100px" height="25px">
        <a href="../da/konstruktion/index.htm?la=da&page=konstruktion">
        <img border="0" src="menu3.png" onmouseover="style.cursor='hand';src='03/00_.png';" onmouseout="src='03/00.png';" onmousedown="src='03/00_.png';" alt=""></a></td>
        <td width="100px" height="25px">
        <a href="../da/design/index.htm?la=da&page=design">
        <img border="0" src="menu4.png" onmouseover="style.cursor='hand';src='04/00_.png';" onmouseout="src='04/00.png';" onmousedown="src='04/00_.png';" alt=""></a></td>
        <td width="100px" height="25px">
        <a href="../da/udlejning/index.htm?la=da&page=udlejning">
        <img border="0" src="menu5.png" onmouseover="style.cursor='hand';src='05/00_.png';" onmouseout="src='05/00.png';" onmousedown="src='05/00_.png';" alt=""></a></td>
        <td width="100px" height="25px"></td>
        <td width="5px" height="25px"></td>
    </tr>
    <tr>
        <td width="5px" height="100"></td>
        <td width="100px" height="100">&nbsp;</td>
        <td width="100px" height="100"></td>
        <td width="100px" height="100"></td>
        <td width="100px" height="100"></td>
        <td width="100px" height="100"></td>
        <td width="100px" height="100"></td>
        <td width="100px" height="100"></td>
        <td width="5px" height="100"></td>
    </tr>
    <tr>
        <td width="5px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="100px" height="25px"></td>
        <td width="5px" height="25px"></td>
    </tr>
    <tr>
        <td width="5px" height="28px"></td>
        <td width="100px" height="28px"></td>
        <td width="100px" height="28px" align="left" valign="top">
        <p style="margin-left: 1px"><b>01.09.2007 </b>12:00</p>
        <p style="margin-left: 1px">firma har købt ..</td>
        <td width="100px" height="28px" align="left" valign="top" >
        <p style="margin-left: 1px"><b>20.06.2007 </b>12:00</p>
        <p style="margin-left: 1px">nye produkter på ..</td>
        <td width="100px" height="28px" align="left" valign="top" >
        <p style="margin-left: 1px"><b>00.00.0000 </b>00:00</p>
        <p style="margin-left: 1px">her står noget af ny</td>
        <td width="100px" height="28px" align="left" valign="top" >
        <p style="margin-left: 1px"><b>00.00.0000 </b>00:00</p>
        <p style="margin-left: 1px">her står noget af ny</td>
        <td width="100px" height="28px" align="left" valign="top" >
        <p style="margin-left: 1px"><b>00.00.0000 </b>00:00</p>
        <p style="margin-left: 1px">her står noget af ny</td>
        <td width="100px" height="28px"></td>
        <td width="5px" height="28px"></td>
    </tr>
    <tr>
        <td width="5px" height="50">&nbsp;</td>
        <td width="100px" height="50" bgcolor="#ffffff" valign="top">
        <img border="0" src="00.png" width="100" height="50"></td>
        <td width="100px" height="50" align="left">
        <img border="0" src="lille_menu1.png" width="100" height="50" alt=""></td>
        <td width="100px" height="50" align="left">
        <img border="0" src="lille_menu2.png" width="100" height="50" alt=""></td>
        <td width="100px" height="50" align="left">
        <img border="0" src="lille_menu3.png" width="100" height="50" alt=""></td>
        <td width="100px" height="50" align="left">
        <img border="0" src="lille_menu4.png" width="100" height="50" alt=""></td>
        <td width="100px" height="50" align="left">
        <img border="0" src="lille_menu5.png" width="100" height="50" alt=""></td>
        <td width="100px" height="50" bgcolor="#ffffff" valign="top">
        <img border="0" src="00.png" width="100" height="50"></td>
        <td width="5px" height="50">&nbsp;</td>
    </tr>
    <tr>
        <td width="5px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="100px" height="5px"></td>
        <td width="5px" height="5px"></td>
    </tr>
</table>
</div>
</body>
</html>

de billeder der hedder 'lille_menu' er dem der skal skifte når et link klikkes på (onmousedown) altså så det både er menu1 og lille_menu1 der beholder 'hove'effekten..
Avatar billede roenving Novice
21. september 2007 - 16:58 #16
>>w13 18/09-2007 19:49:50

-- da standarden kræver, at en alt-attribut er til stede, men ikke nævner noget om, at der skal være noget i den, er alt="" helt relevant i en masse tilfælde ...

-- i dette tilfælde ville det dog være bedre at skrive "menu1" eller f.eks. "Om hjemmesiden", som så vil komme frem, hvis browseren ikke understøtter billeder, eller det f.eks. læses højt for en blind !-)

-- en helt anden ting er, at det er avanceret tåbeligt at sætte en cursor onmouseover, da lige den style i forvejen kun er aktiv ved mousehover ...

-- og cursor:hand; er proprietær IE-kode, efter standarden hedder det cursor:pointer; men det virker desværre ikke i IE5 og ældre, så man skal evt. bruge begge, hvis også gamle IE'er skal understøttes ...

-- en mouseover og en mouseout, der er sat vil jo virke selv om man har lavet noget mousedown, så man skal nok lige noget længere ud, f.eks.

<script type="text/javascript">var oldPic=null,oldPicSrc="";actSrc="";</script>
<img border="0" style="cursor:pointer;" src="da/01/00.png" onmouseover="actSrc=this.src;this.src='01/00_.png';" onmouseout="if(!oldPic||oldPic!=this)this.src='01/00.png'; onclick="if(oldPic){oldPic.src=oldPicSrc;};oldPicSrc=actSrc;oldPic=this;this.src='01/00_.png';" alt="Menu 1">

-- absolut utestet !-)
Avatar billede w13 Novice
21. september 2007 - 18:19 #17
>>Roenving

Det er netop også det, jeg mener. Validatoren har ike noget imod, at "alt" er tomt, men der er jo en grund til, validatoren vil have et alt-tag. Og det er jo ikke for at det ikke skal indeholde noget.
Avatar billede olebole Juniormester
21. september 2007 - 18:41 #18
<ole>

w13 >> W3C anbefaler selv, at man i visse tilfælde efterlader alt-attributten tom. Hvis et billede f.eks. udgør en streg i layuot'et, er det ikke hensigtsmæssigt at skrive noget i alt-attributten  ;o)

/mvh
</bole>
Avatar billede w13 Novice
21. september 2007 - 19:44 #19
Ja, men det er jo så også kun for at snyde deres egen validator, vel?
Avatar billede olebole Juniormester
21. september 2007 - 21:00 #20
Så tror jeg ikke, du forstår, hvordan en parser virker - og hvad meningen er med stringente standarder ... nej, det er ikke derfor  :)
Avatar billede w13 Novice
21. september 2007 - 21:27 #21
Hvilket formål har en tom alt-attribut da? Hvis man udelader "alt", er den vel som standard lig med "" ?
Avatar billede olebole Juniormester
22. september 2007 - 00:12 #22
A: "Hvorfor i alverden leder du stadig efter den 20'er?"
B: "Fordi jeg _ved_, den skal være her et eller andet sted!"
... 3 timer senere ...
A: "Du ka' zqi da ikke blive ved!"
B: "Jamen, den _skal_ være her!"

- og sådan her en stringent parser det også  ;o)

Det hele handler i høj grad om at kunne lave små, effektive parsere, der helt nøjagtigt ved, hvad de skal lede efter. Kun derved kan man nemlig lave dem små og effektive
    http://www.w3.org/TR/html401/struct/objects.html#adef-alt
    http://www.w3.org/QA/Tips/altAttribute
Avatar billede w13 Novice
22. september 2007 - 00:55 #23
Okay. For mig virker det bare absurd, at det skal være sådan. Det betyder kun, at man i parseren slipper for linjen "hvis alt findes.."
Avatar billede olebole Juniormester
22. september 2007 - 01:09 #24
Det virker kun absurd, til du har prøvet at parse kode med RegExp. Så lærer du, hvad der spares ved et helt fast mønster  ;o)
Avatar billede krel Nybegynder
22. september 2007 - 11:11 #25
Jamen så blev alt="" da også lige vendt og drejet engang c",)

>> Roenving jeg prøver da lige, og så har jeg da noget at bygge ud fra..
Avatar billede roenving Novice
22. september 2007 - 11:21 #26
Hov:

<script type="text/javascript">var oldPic=null,oldPicSrc="",actSrc="";</script>
Avatar billede krel Nybegynder
22. september 2007 - 11:24 #27
>> Roenving
Det virker bare lige efter hensigten!

Hvis jeg så vil skifte to billeder under hinanden samtidig hvordan skriver jeg så i de billeder der ligger i en andel celle i tabellen?

det er dem jeg i min kode kalder for "lille_menu(X))

sådan så når menu1 peges på, skifter lille_menu1 også med (mouseover/out/down)
- hvis du forstår??
Avatar billede roenving Novice
22. september 2007 - 11:48 #28
Sæt et id på dem:

<img border="0" src="lille_menu1.png" id="lille_menu1" width="100" height="50" alt="">

-- så kan du bare sætte det:

document.getElementById("lille_menu1").setAttribute("src","jkhljh");
Avatar billede krel Nybegynder
22. september 2007 - 12:19 #29
sætter jeg så den der
"document.getElement..." sammen med den kode du skrev først eller sammen med lille_menu

? ? ?
Avatar billede roenving Novice
22. september 2007 - 12:24 #30
Ind i mouseover/-out-koden !-)
Avatar billede krel Nybegynder
22. september 2007 - 12:31 #31
aha.. c",) self!

der hvor der står "jkhljh" skal det erstattes med noget image-id?
Avatar billede krel Nybegynder
22. september 2007 - 12:35 #32
og ja det fik jeg så selv svar på ... hehe

giver du lige et svar?

for du fortjener point!
Avatar billede krel Nybegynder
22. september 2007 - 12:37 #33
>> olebole

giver du ikke lige et svar i spm: http://www.eksperten.dk/spm/788744
så kan det lukkes?!
Avatar billede roenving Novice
22. september 2007 - 12:40 #34
Velbekomme '-)
Avatar billede krel Nybegynder
22. september 2007 - 12:47 #35
liiiige et spm:

når jeg os vil have lille_menu til at blive på hover-effekten ved onclick hvordan skriver jeg så..?

if(oldPic){oldPic.src=oldPicSrc;};oldPicSrc=actSrc;oldPic=this;this.scr="....
prøvede at sætte
if(oldPic){oldPic.src=oldPicSrc;};oldPicSrc=actSrc;oldPic=this;this.document.getElemet..
ind efter; men så gik det helt i fisk
Avatar billede roenving Novice
22. september 2007 - 13:00 #36
ikke this til document !o]

-- og vær ekstrem omhyggelig med stavningen (regner med at det er en tavetosse her !-)

-- og tak for point ;~}
Avatar billede krel Nybegynder
22. september 2007 - 13:10 #37
c",)
Avatar billede krel Nybegynder
22. september 2007 - 13:13 #38
.... nu er der jo to "this'er"..

hele min onclick ser sådanne ud nu:
onclick="if(oldPic){oldPic.src=oldPicSrc;};oldPicSrc=actSrc;oldPic=this;this.src='01/00_.png';if(oldPic){oldPic.src=oldPicSrc;};oldPicSrc=actSrc;oldPic=this;document.getElementById('lille_menu1').setAttribute('src','01/10_.png');"
Avatar billede roenving Novice
22. september 2007 - 13:22 #39
Du gør tingene to gange, så vil der uvægerligt opstå fejl ...

onclick="if(oldPic){oldPic.src=oldPicSrc;};oldPicSrc=actSrc;oldPic=this;this.src='01/00_.png';document.getElementById('lille_menu1').setAttribute('src','01/10_.png');"
Avatar billede krel Nybegynder
22. september 2007 - 13:37 #40
den beholder bare ikke billedet onclick på lille_menu, lige så snart musen fhernes fra menu1 går billedet i lille_menu1 tilbage til udgangspunktet...
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