1

既存の変更不可能なプラグインで動作する必要がある jQuery スクリプトを作成しています。このプラグインは <input type='text'/> に入力されたテキストをリッスンし、結果を処理します。これを変更することはできません。$('#display).val(newValue);私のスクリプトは、jQueryUI Slider がドラッグされると、入力のテキストを設定しています。この値をユーザーが入力したものとしてプラグインが認識しnewValue、スライダーがドラッグされたときに処理できるようにする必要があります。

誰かがこれの書き込み方向を教えてもらえますか?

みんなありがとう

4

2 に答える 2

1

Onchange リスナーをテキスト フィールドに配置し、必要な関数をトリガーして、ユーザーの onchange 値をリッスンする必要があります。例: function func(){.....ロジックを入れてください.....}

スライダーの変更時にテキスト フィールドから値を読み取る場合は、スライダー コントロールに必要な関数を配置する必要があります。

于 2012-05-10T02:43:54.007 に答える
1

イベント ハンドラーが起動されるように、おそらく keyup (または keypressed?) イベントを「トリガー」する必要があります。

これを行う1つの(少し汚れた)方法を次に示します。

var e = jQuery.Event("keyup");
e.which = 50; // # Some key code value
$("#display").trigger(e);

プラグインが特定のキーを探している可能性があり、イベントを間違って推測した可能性があることに注意してください。

より洗練された方法は、プラグインのイベント ハンドラーを追跡し、それを直接呼び出すことです。FireBug は、ステップスルー デバッグによって、それを見つけるのに役立つ場合があります。それ以外の場合は、jquery を使用して、入力のイベント ハンドラーの検査を開始できます。

var events = $('#display').data("events");
jQuery.each(events, function(key, handlerObj) {
  console.log(handlerObj); // alert(handlerObj);
});

関連するハンドラーが見つかったら、それを直接呼び出すことができます。

HTH

于 2012-05-10T02:53:44.197 に答える