Ciao, benvenuto,

ci sono diverse soluzioni, ognuna con pregi e difetti.

Questo è il modo più semplice, tutto in css, però il funzionamento dipende dalle impostazioni dei singoli browser dei navigatori:

codice:
<html>

<head>

<style type="text/css">

   .pulsante:link, .pulsante:active {
      width:      50px;
      height:     20px;
      background: url('img1.gif');
      }

   .pulsante:hover {
      width:      50px;
      height:     20px;
      background: url('img2.gif');
      }

   .pulsante:visited {
      width:      50px;
      height:     20px;
      background: url('img3.gif');
      }

</style>

</head>
<body>












</body>
</html>
Quando dalla pagina in cui sono i pulsanti si va a visitare una sezione e poi si torna indietro il browser potrebbe essere impostato per richiedere nuovamente la pagina al server e in questo caso i link appariranno tutti "vergini" oppure potrebbe essere impostato per andare a prelevare la pagina in cache e allora il visited dovrebbe funzionare a dovere.

Potresti però risolvere aprendo le diverse sezioni del sito in dei target="_new". In questo modo la pagina con i pulsanti non viene scaricata/ricaricata ma resta sempre attiva e quindi il visited dovrebbe funzionare.

Un'altra soluzione è quella di memorizzare sul server l'informazione su quali pulsanti sono stati via, via, cliccati. E' sicuramente la soluzione migliore ma se sei all'inizio non è tanto facile. Prova a postare nelle sezioni php o asp a seconda del server su cui è ospitato il sito.

In javascript credo che l'unico modo sia di scrivere un cookie che tenga memoria dei pulsanti già cliccati ma anche questo è tutt'altro che facile.


Ciao