スライダーが特定のスライド関数で初期化された後、jQuery UI スライダーのスライド メソッドをオーバーライド/上書きしたいと考えています。
関連するコードを以下に示し、このJSFiddleに示します。
$(function() {
var myslider = $("#myslider");
$( myslider ).slider({
slide: function( event, ui ) {
console.log("sliding AAAAA");
} //end slide function
});//end slider definition
//how do I unbind the original slide action?
$(myslider).off("slide"); //doesn't work
$(myslider).unbind("slide"); //doesn't work
$(myslider).on("slide", function( event, ui ) {
//I want this to be the only action fired.
console.log("sliding BBBBB");
});
});
上記の例/フィドルでは、ユーザーがスライダーをスライドさせると、両方のアクションがまだ起動しています。slide
2番目のメソッドのみが起動され、最初のメソッドが上書きされるようにするにはどうすればよいですか?
ありがとう!
編集
これがこれを行う「正しい」方法かどうかはわかりませんが、うまくいくようです:
$(myslider).slider("option","slide","");
おそらく、これを自分の質問への回答として入力する必要がありますか? しかし、より明確で設計されたより良い方法があると思いますので、それを開いたままにします。