Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    42

    caricamento frame in ordine

    ciao a tutti, ecco il mio problema:

    ho un frameset che mi divide la finestra in due parti (testata e corpo), vorrei che la pagina che contiene il corpo venga caricata solamente dopo che la pagina che contiene la testata sia stata caricata completamente.
    Come posso fare?
    Ho provato ad utilizzare l' onload sulla pagina della testata ma non mi funziona....
    Dio c'è... e gioca col numero 10!
    C'è solo un capitano!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    5
    Ciao a tutti!

    nano2004 sei riuscito a risolvere questo problema, io mi trovo nella stessa situazione e dovrei assolutamente trovare una soluzione.

    Grazie per ogni suggerimento
    ciao
    ch.

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755

    Re: caricamento frame in ordine

    Originariamente inviato da nano2004
    Ho provato ad utilizzare l' onload sulla pagina della testata ma non mi funziona....
    in che senso?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    5
    ciao wallrider,
    in realtà io avrei due problemi che probabilmente si possono risolvere con la stessa soluzione in quanto in entrambi i casi la necessità è che i frame vengano caricati uno dopo l'altro (il frame seguente non deve venir caricato prima che non si sia completamente caricato il suo precedente).

    Cerco di spiegare nei dettagli la mia situazione.

    Problema 1
    La mia pagina e' cosi' formata

    <FRAMESET FRAMEBORDER=0 BORDER=0 COLS="145,*" Name="Contenuto">
    <FRAMESET FRAMEBORDER=0 BORDER=0 rows="75,*,125" Name="sx">
    <FRAME onload="valcheck=1" NAME="frm1" SRC="pag1.html" noresize SCROLLING=no>
    <FRAME onload="valcheck=2" NAME="frm2" SRC="pag2.html" noresize SCROLLING=no>
    <FRAME onload="valcheck=3" NAME="frm3" SRC="pag3.html" noresize SCROLLING=no>
    </FRAMESET>
    </FRAMESET>

    e ho la necessità che frm3 venga caricato solo dopo che frm2 sia stato completamente caricato, che frm2 venga caricato solo dopo che frm1 sia stato completamente caricato. In sostanza i frame devono venire caricati ordinatamente e uno dopo l'altro. E mettendo gli onload non cambia nulla, capita che frm2 venga caricato prima di frm1 per esempio.

    Problema 2
    ho una pagina con due frame, nel secondo frame frm2 ho una funzione in cui carico nel primo frame una pagina html usando questo codice:

    parent.frm1.location.href="page3.html"

    in page3.html ho una funzione che mi setta una variabile sul frame 2 con il seguente codice:

    winparent=top.frames['frm2'];
    winparent.variabilefrm2 = "pippo";

    La funzione in frm2 prosegue utilizzando la variabile variabilefrm2 e' quindi necessario che la pagina page3.html sia completamente caricata ma questo non accade mai. Ricapitolando la mia funzione e' del tipo

    function prova1() {
    parent.frm1.location.href="page3.html";
    if (variabilefrm2 == "pippo"){
    testprova1="ok";
    } else {
    testprova1="ko";
    }
    }

    ovviamente la mia funzione è più articolata ma direi che questo codice dovrebbe farvi comunque capire la mia situazione

    Come posso fare?
    Accetto qualsiasi suggerimento, grazie!
    ch.

  5. #5
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    secondo me risolveresti tutte queste cose mettendo l'onload nel tag <body> delle pagine
    per esempio su page1

    codice:
    ...
    <body onload="parent.frm2.location.href='pag2.html'"...
    eccetera
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    5
    ciao wallrider,
    grazie per il tuo consiglio. Per il problema 1 probabilmente può essere la soluzione giusta ... provo.
    Ma per il problema 2 non posso utilizzare questa soluzione in quanto in realtà il codice javascript lo utilizzo in un progetto lotus Notes e quando carico il frame frm1 gli passo anche dei parametri che calcolo in una funzione che cambiano all'interno di alcuni controlli .... in sostanza da page1 carico il frame frm1 più volte a seconda dei parametri che vengono passati durante la funzione. Ad esempio:

    codice:
    function prova1() {
      parent.frm1.location.href="Form1?OpenForm&a1=10&b2=5";
      if (variabilefrm2 == "pippo"){
        parent.frm1.location.href="Form1?OpenForm&a1=10&b2=5";
        if (variabilefrm2 == "pluto"){
           parent.frm1.location.href="Form1?OpenForm&a1=15&b2=19";
        }
      } else {
       parent.frm1.location.href="Form1?OpenForm&a1=3&b2=4";
      }
    }
    Una cosa di questo tipo dove Form1?OpenForm diventa dopo essere stata processata una pagina html normale e i valori dei parametri non sono costanti come nell'esempio ma li devo calcolare a seconda del valore di variabilefrm2. Quindi dovendo inviare ogni volta parametri diversi non riesco metterlo nell'onload.
    Qualche idea?

    Ciao
    ch.

  7. #7
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    Originariamente inviato da chbrg

    Una cosa di questo tipo dove Form1?OpenForm diventa ??? dopo essere stata processata ...
    diventa cosa!?!

    Qualche idea?
    Togliere i frames ?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    5
    diventa una pagina html nel senso che processa quelli che in Notes vengono chiamati form (che non corrispondono ai form di html) e restituisce al browser una pagina html. Se non conoscete notes è un po' lunga da spiegare, ma non è importante capire questo ... meglio focalizzarsi sul javascript che funziona allo stesso modo che in una pagina html normale.

    in principio avevo adottato come soluzione l'utilizzo di un'altra finistra (con window.showModalDialog) in cui passavo i miei parametri e mi calcolavo ogni volta la variabile di cui avevo bisogno e che ripassavo alla finestra di provenienza (con dialogArguments.variabile = "pippo" e funziona ma in questo caso si vede la finestra che si apre e si chiude e al cliente non piace. Per questo avevo pensato come soluzione di usare un frame non visibile in cui faccio i miei calcoli e poi passavo la mia variabile al frame di origine ma ho il problema che vi ho indicato. Stavo valutando se poteva essere essere una soluzione alternativa.
    ch.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.