2012-04-07 8 views
1

Ich arbeite an div, die versteckt ist und hat eine Schaltfläche "anzeigen". Nach dem Anklicken zeigt es den Inhalt des div "anotherdiv" an. Und der Text der Schaltfläche ändert sich zu "VERSTECKEN". Folgendes ist mein jquery Code:IE zeigen/verbergen div mit Attribut

<button id = "visible" value = "0">SHOW</button> 
$("#visible").click(function(){ 
    $this = $(this); 
    var divValue = $this.attr('value'); 
    if (divValue == 1){ 
     $this.attr('value','0'); 
     $('#anotherdiv').slideUp(1000); 
     $this.text('HIDE'); 
    }else{ 
     $this.attr('value','1'); 
     $('#anotherdiv').slideDown(1000); 
     $this.text('HIDE');  
    } 
}); 

Dieser Code funktioniert gut für Firefox, Chrome und Safari. Aber auf IE funktioniert es auf dem ersten Schritt, wenn der SHOW-Button geklickt wird, der "anotherdiv" geöffnet ist, der Text des botton auf "HIDE" geändert wird und das value-Attribut auf "1" geändert wird. Aber wenn der "HIDE" -Button angeklickt wird, erfasst der IE das Wertattribut nicht. Wie kann ich dieses Problem lösen? Es gab einige ähnliche Beiträge in Stackoverflow, aber ich konnte die definitive Antwort nicht finden. Vielen Dank.

+0

Der Code funktioniert wie erwartet für mich in IE9 und IE10 über eine jsfiddle Demo: http://jsfiddle.net/vSMK6/ – Sampson

+0

@ JonathanSampson Die meisten meiner Benutzer verwenden immer noch IE7 oder IE8. Es funktioniert bei keinem von beiden. irgendein Vorschlag. – Hari

Antwort