jQuery lib Sketch.jsを使用した基本的なHTML描画アプリケーションがあります(<canvas>を使用し、すべてのデスクトップブラウザのIE、Opera、Chrome、Firefoxで完全に動作します。OperaMobile、Chrome Mobile、 FirefoxMobileで正常に動作します、Dolphin HD、Androidストックブラウザ2.2.4。
しかし、Android 4.0ストックブラウザでタブレットまたは電話でテストすると、<canvas>要素を押すと、ボックスが青色で強調表示され、指が実際にどこにあるかに関係なく、タッチイベントが中央から始まります。であり、その後、通常のように戻って指を追跡します。明らかに、要素がタッチされるたびに、その特定のブラウザで不要な線が描画されます。
テストのために、sketch.jsを無効にしてみて、アラート付きの一般的なonmousedownイベントを作成しました。これが発生すると、キャンバス全体がもう一度青色で強調表示され、同じ動作が発生すると思います。Sketch.jsのWebサイトにアクセスすると、まったく同じ動作が発生します。
この動作の既知の回避策はありますか?または、この動作を示さないSketch.jsの代替手段はありますか?(onmousedownイベントを持つすべての<canvas>要素はまったく同じだと思います)
完全を期すために、これはHTML+JSです。
<canvas style="border:1pt solid black;margin:auto;cursor:crosshair;clear:both;" width="450px" height="200px" id="colors_sketch" ></canvas>
<script type="text/javascript">
$(function() {
$('#colors_sketch').sketch();
});
</script>