Avatar billede meelby Nybegynder
17. maj 2004 - 21:15 Der er 9 kommentarer og
1 løsning

kør script i default

Jeg åbner en iframe fra default, hvor jeg har nogle javascript function, disse function vil jeg køre fra iframe.

Jeg har prøvet med:
<a href="java script:top.frames.fadeOut(box, 100, 80, 0);">

Men det virker ikke -  NOGEN IDEER
Avatar billede skovenborg Nybegynder
17. maj 2004 - 21:20 #1
hvis du fra "modersiden" vil køre nogle funktioner fra en iframe kan du skrive:
<a href="java script:document.framenavn.fadeOut(box,100,80,0);">

Hvor iframen ser nogenlunde sådan ud:
<iframe src="side.htm" name="framenavn"></iframe>
Avatar billede meelby Nybegynder
17. maj 2004 - 21:42 #2
Det er omvendt, jeg vil fra iframe køre "fadeOut(box,100,80,0)" en funktion som ligger i modersiden
Avatar billede skovenborg Nybegynder
17. maj 2004 - 22:00 #3
så kan du prøve <a href="java script:parent.fadeOut(....

Det burde kunne gøre det - medmindre du har en mere kompliceret frames-inddeling.
Avatar billede meelby Nybegynder
17. maj 2004 - 22:30 #4
Næ, det er på hovedsiden default jeg har en DIV der fader ind, og inde i div har jeg en iframe, Fra iframe vil jeg fade div ud igen.

Det virker med et almindelig link fra default, men jeg kan ikke få det til at virke fra selve iframe??????
Avatar billede olebole Juniormester
17. maj 2004 - 23:43 #5
<ole>

Med mindre, du laver andre fejl, så virker det, skovenborg viste dig i (17/05-2004 22:00:05). Er du sikker på, du har prøvet det?

/mvh
</bole>
Avatar billede meelby Nybegynder
18. maj 2004 - 07:05 #6
Måske er det mig der ikke kan gennemskue det, så her min kode:

Default
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <title>Nyt dokument</title>
<meta name="generator" content="TSW WebCoder">
<script language="JavaScript1.2">
if(self!=top)top.location=self.location;
all = (document.all) ? 1 : 0;
ElementById=(document.getElementById) ? 1:0;
POPUP = (window.createPopup)? true : false;
if (!all && !ElementById && !POPUP)    {document.location.href="Original/";} else {if (screen.availwidth<801){var forside='Forside800.htm';}else {var forside='Forside1024.htm';}}
function Nyside(url){parent.frames.Frame_1.location.href=url;}

      var fadeFrame = 0;
      var tFader;
        function fadeIt(obj, steps, delay, delta) {
            if(delta>0) {obj.display = "block";}
            if(delta<0 && obj.filters.alpha.opacity==20) {obj.display="none";}
            obj.filters.alpha.opacity = obj.filters.alpha.opacity + delta;
            if(fadeFrame<steps+1) {
                ++fadeFrame;
                var fFadeIt = function a() { fadeIt(obj, steps, delay, delta); };
                tFader = setTimeout(fFadeIt,delay);}}

        function fadeIn (obj, steps, delay, pause ) {
            clearTimeout(tFader);
            fadeFrame=30;
            var fadeDelta = (((100-(obj.filters.alpha.opacity))/steps)+1);
            var fade = function a() { fadeIt(obj, steps, delay, fadeDelta); };
            this.setTimeout(fade, pause);}
           
        function fadeOut(obj, steps, delay, pause ) {
            clearTimeout(tFader);
            fadeFrame=0;
            var fadeDelta = -((obj.filters.alpha.opacity/steps)+1);
            var fade = function a() { fadeIt(obj, steps, delay, fadeDelta); };
            this.setTimeout(fade, pause);}
           
</script>
</head>
<body>
<p>
<a href="java script:fadeIn(box, 100, 80, 0);" title="Intro">Intro ind</a>|&nbsp;
<a href="java script:fadeOut(box, 100, 80, 0);" title="Intro">Intro out</a>
</p>
<div id="box"
style="
z-index:100;
border:1 solid darkblue; filter:alpha(opacity=0);
font-size:16pt;
color:darkblue;
top:98px;
left:49px;
height:439px;
width:928px;
font-size:10;
BACKGROUND:#B5BDD6;
POSITION:absolute;
margin-right:2;
margin-bottom:2">
<iframe frameborder="0" src="Intro.htm" name="frame" height="100%" width="100%"></iframe>
</div>
</body>
</html>

Og her den side iframe loader
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <title>Nyt dokument</title>
<meta name="generator" content="TSW WebCoder">
</head>
<body bgcolor="#B5BDD6" leftMargin="0" topMargin="0" marginheight="0" marginwidth="0"  style="overflow-x:hidden; overflow-y:hidden;">
<p>Dette er</p>
<div style="position: absolute; width: 100%; height: 18px; z-index: 1; left: 0px; top: 0px; background-color: #316AC5" id="lag1">
<a href="java script:parent.fadeOut(box, 100, 80, 0);">
  <img border="0" src="images/luk.PNG" width="23" height="23" align="right">
</a>
</div>
<p>&nbsp;En test på intro, der fader ind...</p>
</body>
</html>
Avatar billede meelby Nybegynder
31. maj 2004 - 19:38 #7
Lukker...
Avatar billede skovenborg Nybegynder
31. maj 2004 - 19:49 #8
hov, sorry - jeg glemte helt spørgsmålet. Men nu når jeg ser din kode kommer så kan jeg se du bruger en variabel der hedder box i både dine iframe og på din normale side. På din normalle side vil det måske ikke gøre nogen forskel, men i iframen eksisterer den variabel jo slet ikke.

Måske du skulle prøve at skrive:
<a href="java script:parent.fadeOut(parent.box, 100, 80, 0);">
istedet - hvis du altså definerer din box variabel på hovedsiden
Avatar billede meelby Nybegynder
31. maj 2004 - 22:14 #9
Hej Skovenborg
Det var lige det der var galt, det virker faktisk perfekt nu - men hov, du skulle havde skrevet det som et svar, for at få point?

Men i alt fald takker jeg.
Avatar billede skovenborg Nybegynder
31. maj 2004 - 22:20 #10
jamen jeg smider bare et svar nu så :-)
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