3

jQueryUI を使用してアプリケーションを開発しています。私もThemerollerを使っています。テーマを使用してできるだけ多くのスタイルを定義したいので、スタイルを変更する必要がある場合は、新しいカスタム テーマを作成する (または既存のテーマをダウンロードする) だけで済みます。

jQueryUI で「選択可能な」インタラクションを使用しようとしています。正常に動作しています。Firebug では、選択した要素に「ui-selected」クラスが適用されていることがわかります。ただし、アイテムが選択されたことを示す視覚的な合図はありません。テーマ CSS ファイル ( Themeroller ページからダウンロードした jquery-ui-1.8rc3.custom.css) を調べたところ、「ui-selected」クラスの宣言がありません。jQueryUI とテーマをダウンロードしたとき、「選択可能」を含むすべてのオプションをチェックしました。

テーマで「ui-selected」クラスを定義するにはどうすればよいですか? 明らかに、独自のスタイル宣言を作成することもできますが、テーマを変更したい場合、そのソリューションは理想的ではありません。

jQuery 1.4.2 と jQueryUI 1.8rc3 を使用しています。

4

2 に答える 2

5

UI クラスを次のように動的に設定できます。

$("#selectable ul").selectable({
  unselected: function(){
    $(".ui-state-highlight", this).each(function(){
      $(this).removeClass('ui-state-highlight');
    });
  },
  selected: function(){
    $(".ui-selected", this).each(function(){
      $(this).addClass('ui-state-highlight');
    });
  }
});
$("#selectable li").hover(
  function () {
    $(this).addClass('ui-state-hover');
  }, 
  function () {
    $(this).removeClass('ui-state-hover');
  }
);
于 2010-09-07T09:32:20.580 に答える
1

申し訳ありませんが、答えは最悪ですが、できません。

これは、ThemeRoller が追加しなければならない機能であり、自動的に生成されたスタイルに追加することはできません。

デモページを見ると、スタイル宣言も手作業で行われています。.ui-selected

于 2010-03-19T22:10:16.940 に答える