07. april 2000 - 16:56Der er
8 kommentarer og 1 løsning
Skifte baggrundsfarve i både NS og IE
Jeg har siddet og brygget på følgende script. --------------------------- ns4 = (document.layers)? true:false ie4 = (document.all)? true:false
function m_over(id, color) { if (ns4) id = document.id.layer if (ie4) id = id.style id.background = "" + color + ""; }
function m_out(id, color) { if (ns4) id = document.id.layer if (ie4) id = id.style id.background = "" + color + ""; } ------------------------------------ men jeg kan ikke fåd et til at virke i NS(den skrifter ikke baggrundsfarven).
Jeg kalder funktionerne med følgelige sætning: onmouseover="m_over(this, '#009b00');" onmouseout="m_out(this, 'green');"
Hvordan skal jeg rette det til så det virker i NS??
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Ja okay.. det kan der måske være noget om. men det virker alligevel ikke. Kan det evt have noget at gøre med "background" skulle være lig med "bachground-color"??
dom = document.getElementById; ns5 = dom && parseInt(navigator.appVersion) >= 5; ie5 = dom && navigator.appVersion.indexOf("MSIE 5")>-1; ns4 = !dom && document.layers; ie4 = !dom && document.all;
function skiftFarve(lag,farve){ if (ns4) { document.layers[lag].bgColor=farve; }else if (ie4) { document.all[lag].style.backgroundColor=farve; }else{ document.getElementById(lag).style.bgColor=farve; } } </script> </head> <body bgcolor="white"> <div id="lag1">Dette er et lag, du garanteret<br> har skrevet en bunke vrøvl i.<br><br> Fuldstændig ligesom jeg ;-)<br></div> <p><a href="java script:skiftFarve('lag1','green');">Skift lagets farve til grøn</a></p> <p><a href="java script:skiftFarve('lag1','white');">Fjern lagets grønne farve</a></p> </body> </html>
function m_over(ied, color) { if (ns4) ied.bgColor=color if (ie4) { id = ied.style; id.background =color; } }
function m_out(ied, color) { if (ns4) ied.bgColor = color if (ie4) { id = ied.style; id.background =color; } } </script>
</HEAD> <BODY>
<layer ID="j" WIDTH=45 onmouseover="m_over(this, '#009b00');" onmouseout="m_out(this, 'green');"> <div ID="j" WIDTH=45 onmouseover="m_over(this, '#009b00');" onmouseout="m_out(this, 'green');">En hel masse tekst - men jeg håber ikke at du vrøvler som olebole antyder {;-) </div> </layer>
</BODY> </HTML>
Her er der det store problem at jeg kun kan få det til at virke i netscape vha. layer mærker og i IE vha. div, span m.m. men ikke med layer. Typisk forbruger venlighed fra to firmaer som elsker hinanden : ) Der findes sikkert en haj som kan få dette lille problem fikset.
Men insisterer du på, det skal virke i 'dagens' browsere (vers.5+), bør du vælge mit forslag...med eller uden vrøvl...hehe! Det skulle du også sagtens kunne modificere, hvis du insisterer på 'this'.
skørsen >> Der er i øvrigt ingen grund til at bruge to ens funktioner til skifte med. Én er nok ;-)
Jeg kan ikke få dit forslag til at virke i Netscape når man kalder fra selve div-mærket, som i nedenstående:
<div id="lag1" onmouseover="java script:skiftFarve('lag1','green');">Dette er et lag, du garanteret har skrevet en bunke vrøvl i.<br><br> Fuldstændig ligesom jeg ;-)<br></div>
Hvordan kan man gøre det?
Synes godt om
Ny brugerNybegynder
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.