Avatar billede budda Nybegynder
03. april 2006 - 20:19 Der er 12 kommentarer og
1 løsning

Hjælp til funktion så den også virker i Firefox.

Jeg har følgende funktion der virker perfekt i IE, hvordan får jeg den til at virke i Firefox:
function visSkjul(obj,typen,pluss) {
  if (document.getElementById(typen).style.visibility == "hidden") {
    x = y = 0;
    temp = obj;
    while (temp.offsetParent) {
      x += temp.offsetLeft;
      y += temp.offsetTop;
      temp = temp.offsetParent;
    }
  document.getElementById(typen).style.left = x + obj.offsetWidth + pluss - 1;
  document.getElementById(typen).style.top = y + 9;
  }
  document.getElementById(typen).style.visibility = (document.getElementById(typen).style.visibility == "hidden") ? "visible" : "hidden";
}

Taget fra PhoexiV.dk
Avatar billede mclemens Nybegynder
03. april 2006 - 21:10 #1
svar også?

  document.getElementById(typen).style.left = (x + obj.offsetWidth + pluss - 1)+"px";
  document.getElementById(typen).style.top = (y + 9)+"px";
Avatar billede budda Nybegynder
04. april 2006 - 08:52 #2
Den vælger ikke samme position i IE og Firefox, kan jeg ikke sige, hvis det er IE så bruger jeg den størrelse ellers bruger jeg den anden??
Avatar billede mclemens Nybegynder
04. april 2006 - 08:55 #3
Kan det evt. være noget border, margin eller padding der opfattes
forskelligt fra browser til browser der giver problemer?

var IE=document.all?true:false;
if(IE){
document.getElementById(typen).style.left = (x + obj.offsetWidth + pluss - 1)+"px";
document.getElementById(typen).style.top = (y + 9)+"px";
}else{
document.getElementById(typen).style.left = (x + obj.offsetWidth + pluss - 1)+"px";
document.getElementById(typen).style.top = (y + 9)+"px";
}
Avatar billede mclemens Nybegynder
04. april 2006 - 09:27 #4
... det kunne godt være vi skal forkorte
scriptet lidt... prøv f.eks.:

function visSkjul(obj,typen,pluss) {
  curnode=document.getElementById(typen);
...

og erstat herefter document.getElementById(typen)
med curnode
Avatar billede budda Nybegynder
04. april 2006 - 09:42 #5
tak for hjælpen, smid et svar :)
Avatar billede mclemens Nybegynder
04. april 2006 - 09:58 #6
svar ;)
Avatar billede budda Nybegynder
04. april 2006 - 10:04 #7
mens jeg har dig kan du ikke fortælle mig hvorfor jeg ikke kan ændre et billede jeg har her:
  if(document.getElementById("img"+typen).src == "gfx/menu-arrow.gif"){
  document.getElementById("img"+typen).src = "gfx/menu-arrow-on.gif";
  }
  else {
  document.getElementById("img"+typen).src = "gfx/menu-arrow.gif";
  }
Avatar billede mclemens Nybegynder
04. april 2006 - 10:09 #8
prøv med den absolutte sti eller kør f.eks.:

  if(document.getElementById("img"+typen).src.match("gfx/menu-arrow.gif")){
  document.getElementById("img"+typen).src = "gfx/menu-arrow-on.gif";
  }
  else {
  document.getElementById("img"+typen).src = "gfx/menu-arrow.gif";
  }

(ikke testet)
Avatar billede mclemens Nybegynder
04. april 2006 - 10:10 #9
- og tak for point :)
Avatar billede mclemens Nybegynder
04. april 2006 - 10:12 #10
virker vist ikke helt to sek...
Avatar billede mclemens Nybegynder
04. april 2006 - 10:14 #11
joh, det gjorde den alligevel :P
... blev bare lige nervøs :P
Avatar billede budda Nybegynder
04. april 2006 - 10:15 #12
hehe tak er noget grøn i js
Avatar billede mclemens Nybegynder
04. april 2006 - 10:16 #13
super ;)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester