Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495

    Aiuto urgente con show-hide layer

    Scusate ragazzi.
    Sono un pessimo conoscitore di JS.
    Utilizzo questo script per mostrare o nascondere dei livelli
    codice:
    function MM_showHideLayers() { //v6.0
      var i,p,v,obj,args=MM_showHideLayers.arguments;
      for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
        if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
        obj.visibility=v; }
    }
    poi ho dei link passando sui quali il livello viene mostrato:
    codice:
    link 1
     href="#" onMouseOver="MM_showHideLayers('nomeliv','','show')";
    link 2
     href="#" onMouseOver="MM_showHideLayers('nomeliv2','','show')";
    infine
    in ogni livello metto
    codice:
    onMouseOut="MM_showHideLayers('nomeliv','','hide')"
    così quando porto il mouse fuori il livello scompare.

    come faccio ad ovviare al caso in cui una persona senza entrare con il mouse nel livello...passa sul secondo link che ha il comando per mostrare un altro livello??...infatti in questo caso si sovrappongono !
    cioè vorrei aggiungere ai link un comando che nasconda i livelli diversi da quello che vado a mostrare.

    come posso fare? grazie

  2. #2
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    up

  3. #3
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    nessuno sa darmi una mano?

  4. #4
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    sembrerò unpo' pedante ma nessuno conosce una function che nasconda tutti i livelli?

  5. #5
    codice:
    // nasconde l'elemento/gli elementi passati come argomento nella funzione
    // utilizzo: hideElements('elem1', 'elem2', 'elem3'... 'elemN')
    function hideElements() {
        for (var i = 0; i < arguments.length; i++) {
            var e = document.getElementById(arguments[i]);
            e.style.display = 'none';
        }
    }
    
    // mostra l'elemento/gli elementi passati come argomento nella funzione
    // utilizzo: showElements('elem1', 'elem2', 'elem3'... 'elemN')
    function showElements() {
        for (var i = 0; i < arguments.length; i++) {
            var e = document.getElementById(arguments[i]);
            e.style.display = 'block';
        }
    }
    ti propongo 3 funzioni abbastanza utili x il tuo problema.
    nel tuo caso, potresti prima di tutto usare la funzione hideElements per nascondere tutti i livelli, e di seguito usare showElements per visualizzare quello che ti serve:

    hideElements('nomeliv', 'nomeliv2', 'nomeliv3' ... 'nomelivN');
    showElements('nomeliv2');


    N.B. gli argomento delle funzioni si riferisco all'id dell'elemento da modificare



    saluti

  6. #6
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    ti ringrazio...le funzioni fungono alla perfezione.
    una domanda: come faccio al caricamento della pagina ad impostare i livelli come "non visualizzati"? grazie

  7. #7
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    con body onload=" "; in effetti scompaiono ma si vedono per qualche attimo...
    un mano per risolvere la cosa?

  8. #8
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    up

  9. #9
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    <div style="display:none;">

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  10. #10
    Utente di HTML.it L'avatar di bobonzo
    Registrato dal
    Jul 2000
    Messaggi
    495
    dunque imposto nello stile quell'attributo e poi le funzioni javascript intervengono a modificarlo?
    grazie

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.