14. august 2007 - 18:15Der er
14 kommentarer og 2 løsninger
Skjule image ved klik
har en image <img id="imgStatus" alt=""/>
src bliver givet ved tryk på en knap, og virker fint: function SetImage2(myImage) { if (myImage !="") { document.getElementById("imgStatus").setAttribute("src",myImage); }
}
Nu prøver jeg samtidigt at gøre img usynligt vhja : document.getElementById("imgStatus").style="display:none"; eller document.getElementById("imgStatus").setAttribute("style","display:none;");
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Så vidt jeg ved, kan du ikke sætte en "style.noget"-attribut. style.setAttribute holder ikke, da ting inde i style="" jo ikke rigtig er attributter. Derfor må det laves på den måde. Jeg er bestemt ikke en ekspert på området, men det er det indtryk, jeg har fået.
Så vidt jeg ved, kan du ikke sætte en "style.noget"-attribut med style.setAttribute. Det holder ikke, da ting inde i style="" jo ikke rigtig er attributter. Derfor må det laves på den måde.
w13 : Jeg forventede, at style er en gemen attribut, blot med en hulens lang værdi:) og derfor blev overrasket over at document.getElementById("imgStatus").setAttribute("style","display:none;"); ikke virkede.
kalp : jeg har ingen problemer med src document.getElementById("imgStatus").setAttribute("src",myImage); virker fint.
Jeg mener at ha' læst et eller andet sted at setAttribute var den "rigtige" måde at gøre det på, deraf mine spæde forsøg. Må tydeligvis ha overset noget:)
Du har også helt ret. setAttribute, getAttribute (og vel egentlig også createAttribute, hvis der ikke allerede er nogen, og removeAttribute, hvis den skal være blank, men det bruger jeg sjældent selv) er de rigtigste måder at gøre det på. Dog holder det ikke ved style. Du kan i øvrigt heller ikke hente value fra et tekstfelt med getAttribute("value"), da du så kun får værdien, som stod der, da siden blev indlæst. Dvs. den værdi, der står i HTML-koden, og ikke den værdi, brugeren har indtastet. Derfor må du der ty til .value
Nå ja, og style er at foretrække fremfor at bare at ændre className og id, da det ofte resulterer i, at alle klasser skal indlæses igen, så vidt jeg har forstået.
kalp>> min personlige erfaring er, at visibility="hidden" efterlader en tom plads, hvor elementet gemmer sig, hvorimod display="none" skjuler det fuldstændig.
w13 >> ahh okay.. men det er praktisk nok hvis man ikke vil have designet skal rykke sig:) men det kommer selvfølgelig kan på hvor og hvordan det skal bruges
tada . kalp har en pointe med "rykke" , jeg var ellers ligee i gang med at lave en gennemsigtig gif for at undgå ryk, hehe, men prøver lige med visibility:)
Det med at ændre klasse har jeg læst et andet sted er i pincippet en dårlig ide, fordi hele displayet skal genberegnes, når klassen på noget som helst ændres. Om dette så er en stor katastrofe, i de tider hvor vi alle har mere cpu-power på skrivebordet end Apollo-13 og formentligt også space shuttlen, skal jeg ikke kunne udtale mig om:)
Hvis kalp og w13 gider lægge et svar så får I points, da jeg igen har lært noget.
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.