jQuery UI の Button を disable する際に、そのボタンへのフォーカスが残ったままになってしまうんで、どうやって解決するのか昨日から探していたんだけどなかなか見つからなかった。
最終的にはソース(query-ui-1.8.2.custom.min.js)を見ると ui-state-hover というクラス名でコントロールしているようだったので検索すると、ここにも書かれている。
フォーカスが残ったままになってしまうことについては、妥当な解決方法がよくわからないのだが、検索すると bug としての報告とそれへのパッチもあった。
しかしパッチを当てるべき対象となるファイルは、僕は使っていなくて、jquery-ui-1.8.2.custom.min.jsだけでやっているので、直接コードに書いた方がいいやと考え、以下のようにしたらうまくいきました。
$("button.prev").button("option", "disabled", true);
$("button.prev").removeClass("ui-state-hover");
コメント