Visualizzazione dei risultati da 1 a 4 su 4

Discussione: [JS] cambio className

  1. #1

    [JS] cambio className

    salve ragazzi,
    una cosa penso semplice ma che mi sta facendo impazzire
    a questo link prova ho previsto in basso a destra un link "ALTO CONTRASTO" che cliccandoci dovrebbe cambiare il className di un elemento. In IE 7, tutto OK, ma in IE6 non funge. Se nella funzione alto_contrasto() inserisco all'esterno del controllo IF un alert per visualizzare lo stato, funziona.
    es.
    function alto_contrasto()
    {

    var elemento=document.getElementById("contrasto");
    var imm=document.getElementById("immagine");


    cambio=new Image();
    cambio.src="images/alto_contrasto_off.gif";

    if (elemento.className.substring(3,7)=="_off")
    {
    elemento.className="sin";
    imm.src=cambio.src;
    }
    else
    {
    elemento.className="sin_off";
    imm.src="images/alto_contrasto_on.gif";
    }

    alert(elemento.className);
    }
    ______________________________________

    Progresso Web.

  2. #2
    up, please
    ______________________________________

    Progresso Web.

  3. #3
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Suppongo dipenda da questo:

    if (elemento.className.substring(3,7)=="_off")
    {
    elemento.className="sin";
    imm.src=cambio.src;
    }
    else
    {
    elemento.className="sin_off";
    imm.src="images/alto_contrasto_on.gif";
    }

    ovvero: una volta che imposti il nome della classe cosi' corto il controllo non puo' piu' operare...

    prova ad adottare, che so, "sin_on"

    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

  4. #4
    grazie per la risposta, ma se inserisco un alert sia nella condizione true che false , funge.

    in effetti nell'IF entra sempre, solo che non fa il suo dovere, che invece fa quando stranamente inserisco un alert per effettuare un'operazione di debug.

    Naturalmente come dicevo nel trhead d'apertura, il tutto funge su IE7 senza problemi.

    Grazie 1000 per la vostra disponibilita'.

    ______________________________________

    Progresso Web.

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.