Originariamente inviato da pierofix
Prova ad aggiungere questa funzione in fondo a 'setActiveStyleSheet':
codice:
function attiva_pulsante()
{
var elenco = document.getElementById('chooseStyle')
var voci = elenco.getElementsByTagName('li')
for (var i = 0; i < voci.length; i++)
{
voci.item(i).className = ''
}
this.className = 'selezionato'
}
Ah, per la cronaca, non si tratta di 'aggiungere codice', ma di impostare valori degli attributi tramite il DOM di javascript.
P.S. Nel caso in cui js sia disabilitato o non presente sul browser dell'utente, lo switch non funzionerebbe e pertanto ti ritroveresti con un elenco di pulsanti inutili. Quindi, perchè non generare anche quelli direttamente dallo script?
Questo è il codice per lo switch modificato ma non mi funziona, sbaglio da qualche parte?:
codice:
function attiva_pulsante()
{
var elenco = document.getElementById('chooseStyle')
var voci = elenco.getElementsByTagName('li')
for (var i = 0; i < voci.length; i++)
{
voci.item(i).className = ''
}
this.className = 'selezionato'
}
function setActiveStyleSheet(title) {
var i, a, main;
if (title) {
for(i=0; (a = document.getElementsByTagName('link')[i]); i++) {
if(a.getAttribute('rel').indexOf('style') != -1 && a.getAttribute('title')) {
a.disabled = true;
if(a.getAttribute('title') == title) a.disabled = false;
}
}
}
attiva_pulsante();
}
Guardando la sorgente selezionata (con firefox) mi compare solo <li class=" "> in tutti i link, anche quello dove ho cliccato