23. maj 2005 - 08:35Der er
19 kommentarer og 2 løsninger
2 funktioner med onclick
Hej, vil høre om der er nogle der kan hjælpe!
Jeg skal bruge et <script> som kan afhjælpe mig med følgende:
Når jeg kliker på et billede skal den skifte billede, og når jeg klikker igen skal den skifte igen. Ideen er at jeg skal kunne lave ala winXP <vis/skjul> i et "dokumentvindue".
Jeg har lavet nedenstående som virker til at jeg kan vis/skjule - men mangler at kunne få billede til at skifte også, således at når man klikker den "ned" = billede 1 og "op" = billede 2 Eller hvordan det nu kan laves!
<script> (undladt at smide det her da der stå _meget_ men hvis skal bruges sig til så smider jeg) </script>
jeg ved så ikke om det går godt hvis du samtidig har en onclick...men måske sådan her -- <img border="0" name="klik" onmousedown="document.getElementById('skjultdiv').style.display='block'; this.src='billede2.jpg';" onmouseup="this.src=billede1.jpg;" src="billede1.jpg" width="80" height="25">
<div id="skjultdiv" style="display: none;"> !det der skal vises her når der klikkes! </div>
og hvis den skal skjules igen på mouseup så -- <img border="0" name="klik" onmousedown="document.getElementById('skjultdiv').style.display='block'; this.src='billede2.jpg';" onmouseup="document.getElementById('skjultdiv').style.display='none'; this.src=billede1.jpg;" src="billede1.jpg" width="80" height="25">
<div id="skjultdiv" style="display: none;"> !det der skal vises her når der klikkes! </div>
Du har brug for en variabel til at huske hvilket billede er aktivt. fx: <img border="0" name="klik" onClick="if(this.isOff){unexpand(this);this.src='billede2.jpg';this.isOff=false}else{expandit(this);this.src='billede1.jpg';this.isOff=true}" src="billede1.jpg" width="80" height="25">
ovenfor oprettes of bruges en variabel isOff i img objetet.
men som du skriver det sørger 'expandit' funktionen for både at åbne og lukke din div, så den har nok en huske variabel selv
så måske det er nemmere at ændre lidt i expandit finktionen
function expandit( imgObjekt ) { if ( fest on der skal åbnes ) { imgObjekt.src="billede1.jpg"; // kode der åbner } else { imgObjekt.src="billede2.jpg"; // kode der lukker } } //endmethod
<script language="JavaScript" type="text/javascript"> if(document.getElementById&&!document.all){ns6=1;}else{ns6=0;} var agtbrw=navigator.userAgent.toLowerCase(); var operaaa=(agtbrw.indexOf('opera')!=-1); var head="display:''"; var folder='';
if (folder.display=="none") { curobj.src="billede1.jpg"; // tilføjet linie folder.display=""; } else { curobj.src="billede2.jpg"; // tilføjet linie folder.display="none"; }
PS: du ved vel at onclick eventhandlereen kun virker i <img kommandoer hvis brugeren benytter Internet Explorer. De HTML-standard browsere Netscape, Firefox, Opera, Konquere ignorerer onclick in <img kommandoer.
Den burde ikke have problemer i nogen nyere browsere, den virker ikke i Netscape 4 (og måske IE4 !-) og tidligere browsere, men umiddelbart skulle den være fuldt kompatibel med samtlige nyere browsere (med forbehold for de simple til håndholdte devices !-)
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.