13. april 2006 - 19:17
Der er
17 kommentarer og 2 løsninger
Problemer med fade in funktion (iframe)
Hejsa Jeg har prøvet at lave en "fade in" funktion på et iframe. Men det virker sgu ikke rigtigt:-( Nogen der kan hjælpe? ------------------------------------------------------- <html> <head> <style> .knap{ display:inline; width:auto; cursor:pointer; border:1px solid #000; } </style> <script type="text/javascript"> var counter = 0; var mozilla = 10; var explorer = 100; function ChangeIframe(page){ var iframe = document.getElementById("FadeIframe"); if(counter<=10){ mozilla = mozilla-0.1; explorer = explorer-10; iframe.style.MozOpacity= ""+filter+""; iframe.style.filter = "progid:DXImageTransform.Microsoft.Alpha(Opacity="+explorer+")"; counter++ windows.setInterval("ChangeIframe();", 100); } else { iframe.src = "side2.html"; } } </script> </head> <body> <div class="knap" onClick="ChangeIframe('iframe.html');">Side 1</div> <div class="knap" onClick="ChangeIframe('side2.html');">Side 2</div> <br /><br /> <iframe src="iframe.html" id="FadeIframe"></iframe> </body> </html> ---------------------------------------------
Annonceindlæg tema
Cloud & AI
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.
13. april 2006 - 19:40
#1
.filter skal du bruge med forsigtighed (for det lægger alle browsere ned med undtagelse af IE !-), og i IE skal du bruge: if(iframe.filters) iframe.filters.alpha.opacity = newOpacity; -- til andre kan du f.eks. iframe.style.MozOpacity = newOpacity/100; iframe.style.KhtmlOpacity = newOpacity/100; iframe.style.opacity = newOpacity/100;
13. april 2006 - 20:00
#2
Hvad er newOpacity?
13. april 2006 - 20:13
#3
Den nye værdi, f.eks. <script type="text/javascript"> var op = 100; function ChangeIframe(page){ var iframe = document.getElementById("FadeIframe"); op -= 10; if(op>=0){ if(iframe.filters) iframe.filters.alpha.opacity = op; iframe.style.MozOpacity = op/100; iframe.style.KhtmlOpacity = op/100; iframe.style.opacity = op/100; setInterval("ChangeIframe();", 100); } else { iframe.src = page; } } </script>
14. april 2006 - 13:05
#4
Den siger: sti/til/fil/undefined er ikke defineret, kontroller venligst stien.
14. april 2006 - 19:04
#5
Det er som om at variablen "page" ikke bliver defineret når setInterval() køres...?
15. april 2006 - 00:04
#6
sådan? <html> <head> <style> .knap{ display:inline; width:auto; cursor:pointer; border:1px solid #000; } </style> <script type="text/javascript"> var op = 100; function ChangeIframe(page){ var iframe = document.getElementById("FadeIframe"); op -= 10; if(op>=0){ if(iframe.filters)iframe.style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity="+op+")"; iframe.style.MozOpacity = op/100; iframe.style.KhtmlOpacity = op/100; iframe.style.opacity = op/100; setTimeout("ChangeIframe('"+page+"');", 100); } else { iframe.src = page; fadeup(); } } function fadeup(){ iframe=document.getElementById("FadeIframe"); op+=10; if(op<=100){ if(iframe.filters)iframe.style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity="+op+")"; iframe.style.MozOpacity = op/100; iframe.style.KhtmlOpacity = op/100; iframe.style.opacity = op/100; setTimeout("fadeup();", 100); } } </script> </head> <body> <div class="knap" onClick="ChangeIframe('2.html');">Side 1</div> <div class="knap" onClick="ChangeIframe('3.html');">Side 2</div> <br /><br /> <iframe src="iframe.html" id="FadeIframe"></iframe> </body> </html>
15. april 2006 - 00:06
#7
hmm, det kan godt det har en bedre effekt (synsmæssig) hvis fadeup fjernes fra function ChangeIframe(page){ og sættes ind i iframe tagget som her: <iframe onload="fadeup();" src="iframe.html" id="FadeIframe"></iframe>
15. april 2006 - 00:10
#8
hmm, det kan godt det har ... -> Hmm, det kan godt være, at det har ...
15. april 2006 - 00:50
#9
rettede også setInterval til en setTimeout... setInterval blev jo ikke clearet - så det var en uendelig løkke...
15. april 2006 - 09:36
#10
og i et script: <html> <head> <style> .knap{ display:inline; width:auto; cursor:pointer; border:1px solid #000; } </style> <script type="text/javascript"> o=100; function fade(p,t){ i=document.getElementById("FadeIframe"); o=(t==0)?o-10:o+10; if(((o>0)&&(t==0))||((o<100)&&(t==1))){ if(i.filters)i.style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity="+o+")"; i.style.MozOpacity = o/100; i.style.KhtmlOpacity = o/100; i.style.opacity = o/100; setTimeout("fade('"+p+"','"+t+"');", 100); }else if(p!=""){ i.src=p; } } </script> </head> <body> <div class="knap" onClick="fade('2.html',0);">Side 1</div> <div class="knap" onClick="fade('3.html',0);">Side 2</div> <br /><br /> <iframe onload="fade('',1);" src="2.html" id="FadeIframe"></iframe> </body> </html>
16. april 2006 - 11:49
#11
Mange tak for det clemens, har dog ikke lige tid til at kigge på det lige nu, men jeg vender tilbage :-) Læg evt. et svar med det samme, så kan jeg altid afvise hvis det ikke virker.. God påske!
16. april 2006 - 12:01
#12
[ Læg evt. et svar med det samme, så kan jeg altid afvise hvis det ikke virker.. ] Ok, roenving lægger du ikke lige et også, så deler vi, hvis det virker... [ God påske! ] - I lige måde :)
17. april 2006 - 07:38
#13
Oki '-)
17. april 2006 - 22:28
#14
Nu får i sgu bare pointene - jeg stoler på jer i tager jo sjældent fejl ;o)
17. april 2006 - 22:42
#15
hehe ... :P ellers får du dem lige tilbage ;)
17. april 2006 - 22:43
#16
- og tak for point :)
18. april 2006 - 01:57
#17
og karma :)
18. april 2006 - 18:45
#18
Selv tak ;-)
23. april 2006 - 02:54
#19
-- også jeg takker ;~}
Vi tilbyder markedets bedste kurser inden for webudvikling