2011-07-25 10 views
1

div要素のスタイルクラスを何らかの効果で1秒間に変更しようとしています。これは私のコードです。この例のスタイルを実行すると、エフェクトやタイムアウトなしですぐに切り替わります。私は間違っているの?jQuery duration toggleClass issue

<html> 
<head> 
<script type="text/javascript" src="jquery-1.6.2.js"></script> 
<script type="text/javascript"> 
$().ready(function() { 
$("#changeStyle").click(function() { 
$("#divka").toggleClass("a1","slow"); 
return false; 
}); 
}); 
</script> 
<link rel="stylesheet" href="style.css" type="text/css"/> 


</head> 
<body> 
<div id="divka"></div> 
<input type="button" id="changeStyle" value="change style"/> 
</body> 



.a1 { 
border: 1px solid black; 
background-color:#eee; 
width:200px; 
height:400px; 
} 

答えて

0

toggleClassは、「遅い」類似のパラメータとは関係ありません。これは、メソッドをアニメーションで使用する場合に有効です。

docsを確認してください。

0

toggleClassの機能は機能しません。探している振る舞いは、jQuery UI switchClass関数で実現します。

0

あなたは使用することができaddClass()または一部ODFのjqueryのUIであるswitchClass():スタイルをアニメーション化していない

$("#divka").addClass("a1",500); 
1

toggleClassあなたはjQueryのアニメーションの方法を使用する必要があります属性。

$("#divka").animate({ 
borderWidth: "1px", 
borderColor: "#000", 
borderStyle: "solid", 
backgroundColor:"#eee", 
width:"200px", 
height:"400px", 
}, 500); 
+0

ありがとう。しかし、CSSがそれほど些細なことではないなら、それでは?これは唯一の方法ですか? – xwrs

+0

はいこれは、任意のdom要素の複数のスタイルをアニメーション化する唯一の方法です。 – ShankarSangoli