1

私は優れたjQuery ノブ プラグインを使用しています。ただし、ユーザー入力に応じて要素を動的に有効/無効にする必要があります。disabledキャンバス要素にバインドされたマウス (またはタッチ) イベントがないという効果を持つ、ページ読み込み時の状態を持つことがサポートされています。この問題を解決する方法、つまり、(ページの読み込み後に) これらのマウス イベント リスナーをバインドおよびバインド解除する方法を知っている人はいますか?

理想的には、このようなことをしたいと思います(無効なノブで)

$('.button').click(function() {
    $('.knob').enable();
});

編集: マウスとタッチイベントをバインド/バインド解除するソースを書き直しました。解決策は完璧ではないので、誰かがおそらくより良い(よりクリーンな)解決策を持っている場合は、質問を開いたままにします.

4

3 に答える 3

4

html

<input class="knobSlider" data-readOnly="true">
<button id="testBtn">clickHere</button>

脚本

ドキュメント準備完了で、

$(".knobSlider").knob();
$("#testBtn").click(function(){
    $(".knobSlider").siblings("canvas").remove();
    if($(".knobSlider").attr("data-readOnly")=='true'){
        $(".knobSlider").unwrap().removeAttr("data-readOnly readonly").data("kontroled","").data("readonly",false).knob();
    }
    else{
        $(".knobSlider").unwrap().attr("data-readOnly",true).data("kontroled","").data("readonly",true).knob();
    }
});

参考までに、私の jsfiddle リンク > http://jsfiddle.net/EG4QM/を使用できます(chrome での外部リソースのロードの問題のため、firefox でこれを確認してください)。

于 2014-06-25T09:56:53.017 に答える
1

これを試して、コントロールを無効にします。私はまだそれを有効にする方法を見つけようとしています

 $("#btnDisable").click(function(){
      $("#knob").off().prev().off();
    });
于 2013-01-11T13:30:15.577 に答える