• Super User

    Eventi all'interno dello script

    Salve mi sapete dire come posso scrivere un evento "generale" all'interno di uno script?
    Non voglio scrivere per 10 tag il parametro "onmouseover" ma vorrei semplicemente scrivere uno script generale per tutti.

    Ho letto che (ad esempio per ie) si deve scrivere qualcosa come:

    document.all['id_oggetto'].onmouseover=nomefunzione();
    nomefunzione(){
    document.all['id_oggetto'].style.backgroundColor='black';
    }

    ma non funziona mi rimane come è!
    Aiuti?


  • User

    beh..
    non è proprio così prova in questo modo:
    Lo so esempio banale;) ma spero esplicativo

    <html>
    <head>
    <title>TEST</title>
    </head>
    <body>

    <div id='idoggetto' >
    <p>Se mi passi sopra cambio colore</p>
    </div>
    <script>
    var obj = document.getElementById('idoggetto');

    obj.style.backgroundColor='red';
    obj.onmouseover = function(){

    if (this.style.backgroundColor=='green')
    this.style.backgroundColor='blue';
    else
    this.style.backgroundColor='green';

    }
    </script>

    </body>
    </html>

    bye bye


  • Super User

    QSi ma così lo creo per uno e basta.
    http://www.clandart.com/test/menu.html
    Quello che voglio creare è che su ogni div nodo principale (home, software, hardware ecc) al passaggio del mouse si colori lo sfondo di un certo colore.
    Come si vede nel sorgente il div che si dovrà colorare ha gia una proprietà "onclick" sul mouse. Volevo adesso creare un unico script all'onload del body (da inserire a loadmenu(); ) che possa leggere il passaggio del mouse ogni qualvolta questo viene fatto.


  • Super User

    ok ho risolto in parte così, aggiungendo questa parte di script all'evento loadmenu in onload del body:

         //gestione del background-color sull'evento 'onmouseover' dei nodi principali
        var divType=document.getElementById('home') 
        divType.onmouseover=function(){
            this.style.backgroundColor='#0066CC';
        }
        divType.onmouseout=function(){
            this.style.backgroundColor='#FFFFFF';
        }
    ```Allora adesso le mie perplessità sono queste:
    * Come faccio, dato l'html della mia pagina, a dirgli che voglio cambiare ANCHE il colore del link all'interno dello "span" racchiuso a sua volta dal famoso div che deve cambiare colore? (insomma vedete nell'esempio, mi riferisco al link 'home').
    * Come faccio a controllare se il mouse si è posizionato sopra uno di questi Div ed avere il valore del suo id solo all'attivazione di tale evento? (sempre cn uno script generale e non personalizzato x ogni div intendo).
    * Domanda varia: Come faccio ad aprire un url sull'onclick? Vorrei che cliccando su un div mi si apra un url (www.abc.it?action='saluta')