Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Layer Crossbrowser

  1. #1

    Layer Crossbrowser

    Ciao.

    Cercando nel sito ho trovato alcuni esempi interessanti sulla visualizzazione di layer (uno si chiamava proprio Layer Crossbrowser).

    Provato e modificato il js funziona bene con explorer soltanto.
    In effetti il codice ha qualche buco per essere veramente crossbrowser.

    In particolare usando Mozilla Firefox 1.0 da errore su document.layer.

    OnLine trovate il file d'esempio, qui

    Accetto suggerimenti per la migliorare la gestione dei layer.

    Grazie mille!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Quel codice contiene vari errori HTML, che andrebbero corretti PRIMA di mettere mano al JS.
    La cosa migliore sarebbe validare la pagina con il validatore del W3C (trovi il link tra i "link utili" del forum CSS e XHTML - sotto HTML).

    Inoltre la pagina contiene contemporaneamente formattazione mediante attributi HTML e formattazione tramite CSS: le due cose nonvanno molto d'accordo, e conviene passare tutto a CSS
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Grazie per la risposta Mich_.

    Scusa l'orribile pagina presentata, ma in fase di test non mi metto mai a curare l'aspetto, preferisco vedere se gli script funzionano e correggerli dove riesco, altrimenti chiedo aiuto.
    Poi quando tutto funziona, metto online la pagina solo se 'validata'.

    Spero di avere migliorato l'esempio di cui sopra, così è possibile guardarlo e dirmi se si può fare qualcosa per i js.

    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ok ora ho iniziato a guardare il JS.

    PRIMO SCRIPT (nota: non funziona in NN4 e IE5, dato l'uso che fai di document.getElement...

    Primo errore: variabile "links". E un nome del DOM, per cui non conviene usarla.

    SECONDO SCRIPT
    if (navigator.appName == "Netscape") {
    e` vero sia per NN4 che per N6+, che pero` sono due brwoser completamente diversi. Ti conviene selezionare NN4 con if(document.layers) e N6+ e tutti i browser moderni (compreso IE6) con if(document.getElementById).

    eval('"layer' + layerNumShowing+'"')
    eval() e` deprecato (potrebbe non funzionare in browser recenti).
    usa getElementById al suo posto: e` molto piu` performante (scua il brutto termine).

    NOTA: il "crossbrowser" di cui parlava il tuo esempio si riferisce probabilmente a IE5.5 e NN4 (linguaggio che si usava qualche anno fa, prima dell'uscita dei browser moderni da N6 in poi).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    semplicemente fantastico

    in effetti non capivo perchè non si usasse il dom

    avrei dovuto avere più cura nel cercare.

    Grazie mille, mi metto a lavoro.

    Spero di rifare senza frame la home del mio sito il prima possibile.

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.