Avatar billede md_craig Nybegynder
23. august 2004 - 17:07 Der er 7 kommentarer og
1 løsning

Udskiftning af layer efter timer

Jeg er ved at strikke nogle sider sammen... ren text...
Hvor der er et ønske om at man udskifter texten mens siden vises...

Har sat det op i 4 Div's og meningen er så at siden skal stå og skifte mellem Div1, 2, 3 og 4... langsomt... og gerne med noget udfadening osv...

Jeg skal altså have en script der tager og viser Div 1 i fx 20 sekunder, derefter fader over til Div2, 3 4 og tilbage til 1... osv...

Hvis nogen kunne hjælpe med det ville det være kanon...
Avatar billede md_craig Nybegynder
23. august 2004 - 17:26 #1
Skal foresten lige siges det skal samtidig flettes ind i noget Mouse over haløj, det tror jeg dog jeg har styr på... det der sådan set er mit problem er at få den til at stå og cirkulere efter en "timer"... for det med at udskifte texten osv... Nul problem...
Avatar billede roenving Novice
24. august 2004 - 01:49 #2
Sådan ?-)

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Fade over mellem elementer</title>
<meta name="Generator" content="Stone's WebWriter 4">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
body{padding:0px;margin:0px;border:0px;font-family:Tahoma,Verdana,Arial,sans-serif;text-align:center;background:#EBD3E2;overflow:hidden;}
#container{position:relative;width:400px;height:300px;background:#ab3;margin:0px auto;text-align:left;}
.fadediv{position:absolute;top:0;left0;z-index:0;width:390px;height:300px;text-align:center;font-weight:900;padding:5px;overflow:hidden;}
</style>
<script language="javascript" type="text/javascript">
var OpC = new Array();
var endOpC = new Object();
var ie = (document.all)?true:false;
var moz = (navigator.userAgent.indexOf("Gecko")>-1)
function startOpChange(elm,end,tim){
  if (!ie && !moz)return;
  var idx = OpC.length;
    for(var i=0;idx>i;i++){
        if(OpC[i][0]==elm){
          clearInterval(OpC[i][4]);
            idx = i;
            break;
        }
        OpC[idx] = new Array();
    }
  if(idx==0)OpC[idx] = new Array();
   
    if(ie)actOp=elm.filters.alpha.opacity;
    else actOp=(elm.style.MozOpacity*100);
  if (actOp!=end){
    OpC[idx][0]=elm;
    OpC[idx][1]=actOp;
    OpC[idx][2]=end;
    OpC[idx][3]=(end>actOp)?1:-1;
    var delayTime = Math.floor((tim*1000)/Math.abs((actOp-end)));
    OpC[idx][4]=setInterval("opChange("+idx+")",delayTime);
  }
}
function opChange(idx){
  OpC[idx][1]+=OpC[idx][3];
  if (ie)OpC[idx][0].filters.alpha.opacity=OpC[idx][1];
  else OpC[idx][0].style.MozOpacity=Math.min(0.99,OpC[idx][1]/100);
  if (OpC[idx][1]==OpC[idx][2]){
    clearInterval(OpC[idx][4]);
    return;
  }
}
var fadetime = 20;
var numdivs = 4,actDiv=-1,prev=null;
function fadeDivs(){
  actDiv = (++actDiv)%numdivs;
  if(prev)startOpChange(prev,0,1);
  prev = document.getElementById('div'+(actDiv+1));
  startOpChange(prev,100,1);
  setTimeout('fadeDivs()',fadetime*1000);
}
</script> 
</head>
<body onload="fadeDivs();">
  <div id="container">
    <div id="div1" class="fadediv" style="color:green;filter:alpha(opacity=0);-moz-opacity:0;">
      Denne div er den første, som vises efter at siden er loadet, men den fader væk efter 20 sekunder, men kommer igen !-)
    </div>
    <div id="div2" class="fadediv" style="color:blue;filter:alpha(opacity=0);-moz-opacity:0;">
      Denne div er den anden, som vises efter at siden er loadet, den fader ind efter 20 sekunder, og fader derefter væk efter yderligere 20 sekunder ...
    </div>
    <div id="div3" class="fadediv" style="color:coral;filter:alpha(opacity=0);-moz-opacity:0;">
      Denne div er den tredje, som vises efter at siden er loadet, den fader ind efter 40 sekunder, og fader derefter væk efter yderligere 20 sekunder ...
    </div>
    <div id="div4" class="fadediv" style="color:orange;filter:alpha(opacity=0);-moz-opacity:0;">
      Denne div er den fjerde, som vises efter at siden er loadet, den fader ind efter 60 sekunder, og fader derefter væk efter yderligere 20 sekunder ...
    </div>
  </div>
</body>
</html>
Avatar billede md_craig Nybegynder
24. august 2004 - 22:09 #3
Nu kan jeg se du kigger på hvor vidt det er IE eller Moz... Opfører NetScape sig anderledes, for i så fald bør jeg jo lige smide den ind også... Eller dvs.. den har jeg nu allerede med...

Men rent teknisk... hvis det ikke virker i netscape skal jeg jo lave alternativer under vejs... (Unden Fade), Da Filtes jo ikke nødvendigvis virker over alt...

Og så sider jeg lige og kigger på det... prøver at få det til at give mening...
Ligner koden fra de der billeder der fader på din side... den har jeg nemlig været inde og kigge på... ;)
Avatar billede md_craig Nybegynder
24. august 2004 - 22:12 #4
eller DVS jeg har en:

var dom = (document.getElementById)?true:false; Som jo blant andet skulle tage NS så Hut jeg Hvisker... ???
Avatar billede roenving Novice
25. august 2004 - 06:05 #5
-- og det er den samme kode, som jeg bruger til billed-fading på min side, og det virker præcis på IE og Netscape/Mozilla/Firefox m.fl. browsere baseret på Gecko-maskinen, der skal laves noget tilpasning (til en ren udskiftning !-) til de andre browsere ...
Avatar billede md_craig Nybegynder
25. august 2004 - 12:37 #6
ok så... Kan ikke lige teste det i NS og de andre alligevel... har ikke fået taget mig sammen til at instalere dem... og det bliver de nok heller ikke... hvertfald ikke på denne maskine...
  Har dog overvejet en 4. maskine til bare det... :oP

Men tak for hjælpen... har vist fået det til at virke også med en Hover så man ved at holde musen over en "menu" kan få den til at hoppe direkte til den og holde sig der så længe musen er over...

Så hvis du lige smider et svar.. ;o)
Avatar billede roenving Novice
25. august 2004 - 12:46 #7
Velbekomme '-)
Avatar billede roenving Novice
25. august 2004 - 14:39 #8
-- og tak for point ;~}
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