Visualizzazione dei risultati da 1 a 5 su 5

Discussione: cambiare sfondo cella

  1. #1
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591

    cambiare sfondo cella

    ho questa funziona che mi cambia il colore di una cella
    codice:
    function cambia(){
    mystyle = document.getElementById("linksopra");
    mystyle.style.backgroundColor="#CBE6D7";
    }
    e un'altra che mi fa ritornare a quello iniziale.
    Ho fatto una function perchè almeno posso applicare a tutti quelli che voglio la stessa funzione di cambiare il colore.
    Credo che però getelementbid non faccia al mio caso perchè mi cambia solo una delle celle, e sempre quella.. un esperto si accorge subito dove sta l'errore ma io sono un principiante e ne so poco...

    chi mi aiuta???

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    potresti passare l'id come parametro della funzione:

    codice:
    function cambia(id) {
      mystyle = document.getElementById(id);
    .
    ..
    }
    Ciao
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591
    si... ma è lo stesso... comunque cambia colore solo la prima che incontra... quando vado sulle altre cambia colore la prima...

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    così?

    codice:
    <html>
    <head>
    <script language="javascript" type="text/javascript">
    function cambiaColore(cell) {
      document.getElementById(cell.id).style.backgroundColor = '#0000FF';
    }
    
    function ripristinaColore(cell) {
      document.getElementById(cell.id).style.backgroundColor = '#EEEEEE';
    }
    </script>
    <style type="text/css">
    <!--
    .default {
    	background-color: #EEEEEE;
    	width: 300px;
    }
    -->
    </style>
    </head>
    <body>
    <table width="600" border="1" cellspacing="0" cellpadding="0">
      <tr>
        <td id="cell1" onMouseOver="cambiaColore(this);" onMouseOut="ripristinaColore(this);" class="default"></td>
        <td id="cell2" onMouseOver="cambiaColore(this);" onMouseOut="ripristinaColore(this);" class="default"></td>
      </tr>
      <tr>
        <td id="cell3" onMouseOver="cambiaColore(this);" onMouseOut="ripristinaColore(this);" class="default"></td>
        <td id="cell4" onMouseOver="cambiaColore(this);" onMouseOut="ripristinaColore(this);" class="default"></td>
      </tr>
      <tr>
        <td id="cell5" onMouseOver="cambiaColore(this);" onMouseOut="ripristinaColore(this);" class="default"></td>
        <td id="cell6" onMouseOver="cambiaColore(this);" onMouseOut="ripristinaColore(this);" class="default"></td>
      </tr>
    </table>
    </body>
    </html>
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591
    ti ringrazio, questo è più che perfetto...

    ho trovato un'altra soluzione, sfruttando i CSS... usi onmouseover:"this.className='tuadefinizioneCSS'" e va lo stesso.. con il vantaggio, secondo me di non usarejavascript ma di avere tutto nel CSS...
    comunque ti ringrazio tantissimo dell'aiuto.

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.