addClass funktioniert nicht im Internet Explorer 8 und darunter

Mein code

$(document).ready(function(){ 

      $(".CheckBoxClass").change(function(){
        if($(this).is(":checked")){
            $(this).next("label").addClass("LabelSelected");
        }else{
            $(this).next("label").removeClass("LabelSelected");
        }
    });
});

Dies ist mein css

.CheckBoxClass{
    display: none;
}
.CheckBoxLabelClass{
    background:  url('/public/images/chk_off.png') no-repeat;
    padding-left: 24px;   
    margin: 5px;
    height: 22px;   
    width: 150px;
    display: block;
}
.CheckBoxLabelClass:hover{

}
.LabelSelected{
    background: url('/public/images/chk_on.png') no-repeat;
}

Ich habe gegoogelt alles was ich denken konnte. Alle Lösungen funktionieren nicht. Ich habe versucht den code umschreiben, mit Hilfe von id-Selektoren anstelle und nicht neben Funktionen, etc. Nichts davon funktioniert. Ich bin mir nicht sicher, was Los ist. Danke.

Können Sie nach einen test-Fall in jsFiddle?
Haben Sie eingefügt console.log() oder alert() Anweisungen, um sicherzustellen, dass die .is(":checked")) Funktion ist die Bewertung richtig? Ist der IE noch immer den richtigen code zu sperren?
Hat die label element direkt nach der .CheckBoxClass element? Funktioniert es in anderen Browsern? Ich vermute ein problem mit der HTML-und Missverständnisse, wie next funktioniert. Btw. if(this.checked) ist ein schneller Weg,...
Können Sie das bestätigen, dass jquery geladen wird und verwendet, richtig? Es gibt eine ziemlich lange Liste von Antworten für Problem mit jQuery in Internet Explorer 8, dass könnte in Bezug auf Ihr problem.
Könnten Sie fügen Sie den code ein. Auch Sie sind sicher .addClass nicht funktioniert oder Sie einfach nicht sehen können, den Stil, die Klasse?. Mit F12 starten Sie developer tools, und Sie können überprüfen Sie Ihre element zu sehen, wenn er die Klasse.

InformationsquelleAutor Drew H | 2011-06-21

Schreibe einen Kommentar