3

ボタンのテーマを動的に動的に変更するのに少し問題があります。私が使用することを学んだ別の投稿から:

<input type="button" data-inline="true" data-mini="true" data-theme="c" id="my-button" value="Save">
<script>
$("#my-button").buttonMarkup({ theme: 'a' }).button('refresh');
</script>

技術的には、マウスオーバーするまでこれは機能します-その後、ボタンはデータテーマ「c」に戻ります。テーマを動的に変更するより良い方法はありますか?

4

2 に答える 2

1

以下のようなボタンを使用する場合

 <a href="#" id="my-button2" data-role="button" data-theme="e">Save2</a>

以下のようにテーマを変更できます

$('#my-button2').attr("data-theme", "c").removeClass("ui-btn-up-e").addClass("ui-btn-up-c");

ここでライブフィドルをチェックしてくださいhttp://jsfiddle.net/mayooresan/jfDLU/

于 2013-03-29T08:47:45.650 に答える
0

この答えを見つけようとしましたが、DOM構造を調べた後、この解決策を思いつきました。ボタンをクリックしてテーマを切り替えるための以下の関数を作成しました。ホバー クラスは、クリックしている同じボタンのテーマを変更する場合にのみ対処する必要があります。これらは、入力タイプのボタン要素で機能するようです。(jqm バージョン 1.3.2)

function changeButtonTheme(buttonSelector,toTheme){
    var currentTheme  = $(buttonSelector).attr('data-theme');
    var parent  = $(buttonSelector).parent();
    $(buttonSelector).attr("data-theme", toTheme).removeClass("ui-btn-up-"+currentTheme).addClass("ui-btn-up-"+toTheme);
    parent.attr("data-theme", toTheme).removeClass("ui-btn-up-"+currentTheme).addClass("ui-btn-up-"+toTheme);
    //parent.removeClass("ui-btn-hover-"+currentTheme).addClass("ui-btn-hover-"+toTheme);
}
于 2013-09-02T16:15:02.443 に答える