スライダでツールチップを動かすには、水平スライダウィジェット全体ではなく、スライダハンドルからツールチップを開く方法を見つけなければなりません。あなたがマウスで動かす実際のスライダーがそれ自身のウィジェットかどうかはわかりません。オンライン宣言型のサンプルからハンドルのためのHTMLは、この
<div data-dojo-attach-point="sliderHandle,focusNode" class="dijitSliderImageHandle dijitSliderImageHandleH" data-dojo-attach-event="press:_onHandleClick" role="slider" aria-valuemin="-10" aria-valuemax="10" tabindex="0" aria-valuenow="4" style="position: absolute;"></div>
のように見えますが、sliderHandleオブジェクトへの参照を取得することができればそれで、あなたは、次のようなものを試すことができます。
/*
* Create the tooltip dialog that you want to show (I use tooltip dialog,
* but you can do the same with basic tooltip)
*/
var myTooltipDialogbase = new ttdialog({
id: 'myTooltipDialogBase',
style: "width: 275px;"
});
あなたのイベントハンドラ(この例では、マウスの右クリック)でポップアップ
/**
* On right mouse click, opens the tooltip dialog
*/
on(sliderHandle, 'contextmenu', function (event) {
popup.open({
parent: sliderHandle,
popup: myTooltipDialogbase,
around: sliderHandle.domNode
});
});
EDIT開き:あなたの2番目の質問について を、あなたはスライダープロパティのonChangeを(使用することができます)スライダーの値が変わるたびに何かをする。スライドするときにonChangeが呼び出されるように、intermediateChanges = trueを設定する必要があります。あなたの場合は、onChange()で、ツールチップへの参照を取得できる場合は、スライダの値の変更ごとにツールチップオブジェクトの1つの値を変更します。
ありがとう...私はそれを試してみるつもりです。 – ShyProgrammer
あなたが気にしない限り、ステートフルなしで値を設定するだけで、テキストボックスの値は常に更新されます。なぜそうなのか? – ShyProgrammer
@ShyProgrammerああ、申し訳ありませんでしたその例を参照して、私の記事の編集を参照してください。 – erotavlas