09. november 2003 - 16:35
Der er
21 kommentarer og 1 løsning
onmouse farve skift med 3 farver?
Kan man? :) Jeg har lavet med mouseover så den skifter fre en farve til en anden... men kan man lave så den er hvid og når man så holder musen overså blir den orange og hvid igen lige efter.. altså 3 farver :)
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
09. november 2003 - 16:42
#1
det skal gøres med noget javascipt: <head> <script> var ns, ns6, ie, newlayer, oldlayer; ns4 = (document.layers) ? true : false; ie4 = (document.all)? true:false ie5 =(document.getElementById)? true:false ns6 = (document.getElementById && !document.all)?true:false; function getLayerStyle( lyr ){ if( ns4 ){ return document.layers[lyr]; } else if( ie4 ){ return document.all[lyr].style; } else if( ie5 ){ return document.all[lyr].style; } else if( ns6 ){ return document.getElementById(lyr).style; } } function onHover(varlink){ getLayerStyle(varlink).color = '#F8BF24'; //ændre farven første til orange setTimeout("getLayerStyle(varlink).color = '#F8BF24';", 1000); //vent 1 sekundet og skift til hvid } </script> </head> <body> <a id="mitlink" href="tralala.htm" onmouseover="onHover('mitlink');">dur det?</a> </body>
09. november 2003 - 16:45
#2
Nopz :P 'Varlink ikke deffineret'
09. november 2003 - 16:48
#3
ja det fandt jeg ud af, jeg skrev bare løst af, jeg laver lige et fungerende eks.
09. november 2003 - 16:51
#4
<html> <head> <script> var ns, ns6, ie, newlayer, oldlayer; ns4 = (document.layers) ? true : false; ie4 = (document.all)? true:false ie5 =(document.getElementById)? true:false ns6 = (document.getElementById && !document.all)?true:false; function getLayerStyle( lyr ){ if( ns4 ){ return document.layers[lyr]; } else if( ie4 ){ return document.all[lyr].style; } else if( ie5 ){ return document.all[lyr].style; } else if( ns6 ){ return document.getElementById(lyr).style; } } function onHover(varlink){ getLayerStyle(varlink).color = '#F8BF24'; //ændre farven første til orange setTimeout("waitHover('" + varlink + "');", 1000); //vent 1 sekundet } function waitHover(Flink){ getLayerStyle(Flink).color = '#FFFFFF'; //skift farven til hvid } </script> </head> <body> <a id="mitlink" href="tralala.htm" onmouseover="onHover('mitlink');">dur det?</a> </body> </html>
09. november 2003 - 16:53
#5
Arhg ja det fungere, men det er ikke helt det jeg havde i tankerne :P Det var mere sådan en animeret overgang mellem farverne jeg tænkte på... nogen du kender til?
09. november 2003 - 16:54
#6
altså fading ? :)
09. november 2003 - 16:54
#7
Det lyder rigtigt hehe... det fungere som det skal nu altså den skifter mellem farverne... men ja hvis jeg gerne vil havde den til at fade mellem farverne... hvordan gør vi så det?
09. november 2003 - 16:59
#8
så er det jo sådan set bare af lave onHover lidt om, sådan den har fx 5 "broer" over i en ny farve noget ala: <html> <head> <script> var ns, ns6, ie, newlayer, oldlayer; ns4 = (document.layers) ? true : false; ie4 = (document.all)? true:false ie5 =(document.getElementById)? true:false ns6 = (document.getElementById && !document.all)?true:false; function getLayerStyle( lyr ){ if( ns4 ){ return document.layers[lyr]; } else if( ie4 ){ return document.all[lyr].style; } else if( ie5 ){ return document.all[lyr].style; } else if( ns6 ){ return document.getElementById(lyr).style; } } function onHover(varlink){ getLayerStyle(varlink).color = '#F8BF24'; //ændre farven første til orange setTimeout("getLayerStyle('" + varlink + "').color = '#F9D161';", 100); setTimeout("getLayerStyle('" + varlink + "').color = '#FADD8A';", 200); setTimeout("getLayerStyle('" + varlink + "').color = '#FBE6AA';", 300); setTimeout("getLayerStyle('" + varlink + "').color = '#FDEFCA';", 400); setTimeout("getLayerStyle('" + varlink + "').color = '#FEFBF3';", 500); } </script> </head> <body> <a id="mitlink" href="tralala.htm" onmouseover="onHover('mitlink');">dur det?</a> </body> </html>
09. november 2003 - 17:00
#9
for at finde ud af "mellemfarverne" kan du bruge et grafikprogram og laver en gradient-fyld på og så tag farvene så der bliver en pæn overgang, fx med Paint Shop Pro
09. november 2003 - 17:01
#10
09. november 2003 - 17:01
#11
aahhh I see... smart! :) Kan vi smide den på en TD istedet for text?
09. november 2003 - 17:02
#12
jo sagtens :)
09. november 2003 - 17:02
#13
men så er det jo nok background-color, du vil rode med korrekt?
09. november 2003 - 17:03
#14
jep
09. november 2003 - 17:03
#15
så skal onHover se sådan her ud: function onHover(varlink){ getLayerStyle(varlink).color = '#F8BF24'; //ændre farven første til orange setTimeout("getLayerStyle('" + varlink + "').backgroundColor = '#F9D161';", 100); setTimeout("getLayerStyle('" + varlink + "').backgroundColor = '#FADD8A';", 200); setTimeout("getLayerStyle('" + varlink + "').backgroundColor = '#FBE6AA';", 300); setTimeout("getLayerStyle('" + varlink + "').backgroundColor = '#FDEFCA';", 400); setTimeout("getLayerStyle('" + varlink + "').backgroundColor = '#FEFBF3';", 500); }
09. november 2003 - 17:04
#16
der var lige sniget sig en fejl ind i første linje: getLayerStyle(varlink).backgroundColor = '#F8BF24'; //ændre farven første til orange
09. november 2003 - 17:06
#17
Smukt mester ! :D Det er du sq ikke helt værst til de point er så meget dine! Tak for hjælpen.
09. november 2003 - 17:08
#18
tak for point, held og lykke med projektet
09. november 2003 - 17:10
#19
Hov hehe 2.sek :D Inden du smutter... nu kan jeg jo ikke deffinere flere td'er pga det har samme navn... skal jeg så bare deffinere flere af functioner? function onHover(varlink){ function onHover(varlink2){ function onHover(varlink3){ ... ser ikke ud til at fungere...
09. november 2003 - 17:13
#20
okay weird... det fungere nu.
09. november 2003 - 17:17
#21
du ændre kun din tr (her et link, gider ikke skrive et om) <a id="mitlink1" href="tralala.htm" onmouseover="onHover('mitlink1');">dur det?</a> <a id="mitlink2" href="tralala.htm" onmouseover="onHover('mitlink2');">dur det?</a> osv.
09. november 2003 - 17:17
#22
jep netop... sådan jeg også opdagede det :) tak endnu engang.
Vi tilbyder markedets bedste kurser inden for webudvikling