Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: getelementbyId

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    82

    getelementbyId

    Ciao ragazzi,
    ho una funzione in una pagina che si riferisce con getelementbyId ad un div che è contenuto in un altra pagina che includo in questo modo:



    Praticamente questo div è null per la pagina principale, quindi immagino che questo modo di includere faccia considerare la pagina inclusa come a se stante, giusto?

    Alternative?

    Grazie mille!!!

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    no, un' inclusione lato server inserisce quel contenuto esterno nel documento, esattamente nel punto in cui si trova l' inclusione
    per il lato client quella parte aggiunta e' come se ci fosse sempre stata nel documento

    sicuramente il problema e' nella tempistica: tentare di accedere ad un elemento non ancora definito nel markup genera errori, perche' lo script non puo' sapere di cosa si sta parlando

    per questo in genere si fanno eseguire script che interagiscono col markup al window.onload (o domready, per non attendere tutto il caricamento di file accessori al documento)

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    No, potrebbe essere che richiami il div prima che questo sia disponibile hai due soluzioni:
    A) richiami il div nel onload (cioè a fine caricamento pagina) tipo: onload=function(){document.getElementById('mioid') .....}
    B) inserisci il richiamo/funzione a fine pagina prima della chiusura del body tipo: <script>miafunzione(){document.getEelementById('mi oid')......}</script> </body>
    Chiaramente è solo un ipotesi dato che non posti codice js (che per il futuro di consiglio sempre di fare).
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    82
    Intanto grazie per la vostra cortesia.
    Poniamo il caso che invece una pagina sia inclusa in un altra e venga caricata in un iframe della principale.
    In questo caso se inserisco window.onload=function(){.... nella pagina inclusa, la funziona verrebbe processata a fine caricamento della stessa, o della pagina finestra principale?

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    della stessa

    un iframe e' un oggetto window a se' stante

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    82
    ok, il debug di firefox mi dice:

    #0: function (null)() in <http://www.communityre.eu/...../mapsgoogle_a.asp> line 29

    la linea 29 corrisponde proprio a:
    window.onload=function(){


  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Stiamo parlando che tutte le pagine in questione a prescindere dal caricamento fanno parte di un solo dominio/sito giusto?
    Per intenderci non è che nel iframe carichi una pagina esterna al tuo sito (tipo google) perché l'operazione non sarebbe possibile.
    La funzione riga 29 dove si trova pagina principale o iframe?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    82
    Si si stesso dominio,
    sembra come se considerasse null l'oggetto window,
    forse è fasullo questo debugger di firefox!

  9. #9
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ho aggiornato la risposta, e aggiungo il div dove?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    82
    la gerarchia è questa:

    pagina A include pagina B in un iframe
    pagina B include pagina C con un include
    Pagina C contiene il div a cui si riferisce
    la funzione inserita nell'onload della pagina B
    (quindi l'iframe)

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 © 2025 vBulletin Solutions, Inc. All rights reserved.