シンプルな Web ページに dojox.mobile.valuepicker を埋め込んでいます。valuepicker はどのデスクトップ ブラウザでも正常に動作しますが、iPad または Android タブレットでは、ブラウザで奇妙な動作が見られます。+ および - ボタンを使用して iPad の値を増減すると、ウィジェットから返される値は常に、valuepicker に表示される値よりも 1 大きいか 1 小さくなります (ウィジェットによって返される値を大きくすると 1 小さい場合)。ウィジェットが表示する値よりも 1 つ多く減少します)。OSバージョンが異なる複数のiPadでこれを試しました。これが私のコードです。
var widgetValueIs = null;
widgetToTest= dijit.byId("rateMeasurement");
widgetToTest.on("touchend, click, change", function() {
widgetValueIs = dijit.byId('rateMeasurement').get('value');
if (widgetValueIs >= 12 && widgetValueIs <= 20){
domAttr.set("rateScore", "innerHTML", widgetValue);
} else if (widgetValueIs >= 9 && widgetValueIs <= 11){
domAttr.set("rateScore", "innerHTML", widgetValue);
} else {
domAttr.set("rateScore", "innerHTML", widgetValue);
}
});
これは、ピッカー値が更新される前にキャプチャが発生したことに関係していると思いますが、更新後に値が確実に取得されるようにするにはどうすればよいですか?
ありがとう、スティーブン