Gå til innhold

Javascript vil ikke fungere skikkelig i Firefox!


Anbefalte innlegg

Hei =D

 

Har en Javascript funksjon på nettsiden min for å endre tekst på en knapp som blir brukt til å skjule/vise noen elementer.

 

Alt funker fint på Chrome og IE (Ja, IE faktisk), men ikke på Firefox.

 

 

På Firefox reagerer ikke det ene script'e på første klikk. Noe som gjør at på knappen står det "Vis" når elementene fortsatt er der og da blir alt dermed snudd på hodet. "Skjul" kommer når elementene allerede er skjult, og "Vis" når elementene er der.

 

Her er de to JS som blir brukt.

 

function toggleLayer( navbar ) // Skjul navbar
{
 var elem, vis;
 if( document.getElementById ) 
   elem = document.getElementById( navbar );
 else if( document.all ) 
     elem = document.all[navbar];
 else if( document.layers )
   elem = document.layers[navbar];
 vis = elem.style;
 if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)
   vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';
 vis.display = (vis.display==''||vis.display=='block')?'none':'block';

 

 

og

<script language="javascript" type="text/javascript">
function button1Toggle() {
if (document.myform.button1.value == "Skjul Topbar") {
document.myform.button1.value="Vis Topbar";
}
else {
document.myform.button1.value = "Skjul Topbar";
}
}

Endret av Mr.Postman
Lenke til kommentar
Videoannonse
Annonse

Uten å få se hele løsningen din klarer jeg ikke helt sette meg inn i hvordan dette er satt opp, men det virker som du ikke har helt kontroll på stilene dine her. Display er f. eks. aldri blank, selv om du kan "sette den til det" for å bruke standardstilene til nettleseren. At Firefox oppfører seg som normalt etter at du har kjørt koden en gang tyder på at rutinene dine ikke fungerer før etter at stilegenskapene er endret til de verdiene du forventer.

 

Kanskje noe slikt som dette kan fungere?

 

vis.display = (vis.display != 'none') ? 'none' : 'block';

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...