Avatar billede boselbach Nybegynder
21. marts 2007 - 13:53 Der er 15 kommentarer og
1 løsning

fade in

Hej
Er der en af jer der kan svare på hvorfor denne stump kode, når den bliver udført i firefox, starter fint med at lave fade in, men nå variablen fade når en værdi af ca. 20 er div'en fuldt synlig, hvorefter den så forsvinder og kommer igen som den skal? jeg håber i kan danne jer et billed af hvad jeg mener, ellers må i lige afprøve det :-)

Koden virker fint i IE

**********************

var fade = 0;
var boxFade = "mindiv";

function fadeIn(boxFade)
{
    if(box = document.getElementById(boxFade)){

        if(fade <= 90){
            box.style.opacity='.' + fade + '\'';
            box.style.mozOpacity='.' + fade + '\'';
            box.style.filter='alpha(opacity=' + fade + ')'
            setTimeout("fadeIn(boxFade),10")
            fade += 5;
        }
    }
}
**********************

Med venlig hilsen
Bo Selbach
Avatar billede Slater Ekspert
21. marts 2007 - 14:01 #1
Sandsynligvis fordi Opera og Firefox ikke regner med alpha-værdier fra 0-100 som Internet Explorer gør, men fra 0-1. Dvs. du skal lige dividere "fade" med 100 før du kaster den ind i mozOpacity og opacity :)
Avatar billede softspot Forsker
21. marts 2007 - 14:03 #2
viperine >> det er vel derfor der er punktum foran fade-værdien for opacity og mozOpacity...?
Avatar billede Slater Ekspert
21. marts 2007 - 14:04 #3
Oh, sorry :( Det overså jeg totalt.
Avatar billede softspot Forsker
21. marts 2007 - 14:05 #4
Hvorfor det fejler ved en fade-værdi på 20 er lidt underligt, jeg kunne forstå at den ville fejle ved 100 (den den så ville blive opfattet som .10 og ikke 1.0 som viperine er inden på).
Avatar billede boselbach Nybegynder
21. marts 2007 - 14:18 #5
Det er mig der tager fejl det er når fade når en værdi på 10 det går galt og derefter starter den forfra og gør det rigtigt..
Avatar billede roenving Novice
21. marts 2007 - 14:18 #6
-- men jeg har også måttet lave et hack i mit fade-script fordi den netop 'brækkede' ved opacity = 1

-- så det har jeg gjort med:

box.style.opacity = fade<100 ? fade/100 : 0.999;
Avatar billede softspot Forsker
21. marts 2007 - 14:26 #7
Jeg har fået flg. til at fungere (tilsyneladende) i IE6 og FF1 (men ikke i Opera 7.54):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript">
var fade = 0;
var boxFade = "mindiv";

function fadeIn(boxFade) {
  var box = document.getElementById(boxFade);
  if(box) {
    if(fade <= 90) {
      if(box.style.opacity)
        box.style.opacity='.' + fade;
      else if(box.mozOpacity)
        box.style.mozOpacity='.' + fade;
      else if(box.style.filter)
        box.style.filter='alpha(opacity=' + fade + ')';
      /*else
        alert('Øv!');*/
      setTimeout("fadeIn('" + boxFade + "')",50);
      fade += 5;
    }
    else
      alert('Hep hep! Færdig');
  }
  else
    alert('Hep! fejl');
}
</script>
</head>
<body onload="fadeIn('mindiv')" style="background-color:black">

  <div id="mindiv" style="width:200px;background-color:red;filter=(opacity=0);opacity=0;moz-opacity:0;">Dette er en test...</div>

</body>
</html>
Avatar billede boselbach Nybegynder
21. marts 2007 - 14:37 #8
Jeg bruger FF2 og der er resultatet det samme som før, desværre.. Det er meget irriterende at de ikke kan holde den samme standard :-)
Avatar billede softspot Forsker
21. marts 2007 - 15:08 #9
Prøv at kopiere den kode jeg har vist (i sin fulde længde) over i en separat htm-fil og kør den i din FF2. Jeg har det til at fungere i både FF1 og FF1.5, så jeg tvivler på at FF2 ikke kan køre det... det må være fordi du mangler at få noget kode med fra mit eksempel.
Avatar billede boselbach Nybegynder
22. marts 2007 - 12:02 #10
Jeg fik det til at virke med roenving's forslag. Så han får de 200 point. Men i andre må også gerne få 200 point, jeg har alligevel så mange og bruger dem næsten aldrig. så skriv lige hvis i vil have lidt point som tak for hjælpen.
Avatar billede boselbach Nybegynder
22. marts 2007 - 12:04 #11
Hvordan er det lige jeg giver de point?? jeg kan ikke trykke accepter svar nogen steder
Avatar billede roenving Novice
22. marts 2007 - 12:10 #12
Du skal lige have nogle svar først, for kun nogle sådanne kan accepteres !-)

-- og du skal selvfølgelig huske, at du ikke må udlove mere end 200 point for et spørgsmål, men det er da også helt fint, hvis du deler dem mellem de aktive i tråden og dig selv !o]

Velbekomme '-)
Avatar billede softspot Forsker
22. marts 2007 - 13:09 #13
Hvis mit indlæg var noget værd, kan du give point, ellers afvis mit svar :)
Avatar billede softspot Forsker
07. august 2008 - 14:25 #14
Hva' så roenving... skal du have lidt point? ;D
Avatar billede roenving Novice
09. august 2008 - 13:06 #15
Tjah, det så jo ud til, at det var planen !-)
Avatar billede softspot Forsker
10. august 2008 - 11:22 #16
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