8

Windows Phone 8は、デフォルトのブラウザー内のタッチイベントを完全にサポートしていますか?

箱から出してすぐに機能するので、任意のtouchmoveイベントをWebページで検出できますか?

touchmoveイベントをハイジャックして、スワイプジェスチャとしてインターフェイスに使用するブラウザで問題が発生しました。Windows Phone 8ブラウザはそのようなことをしますか?

誰かがWindowsPhone8 Touchイベントに関するドキュメントを指摘できますか?

編集:

不思議な電話8を持っている人がタッチ機能をテストできるようにするページがここにあります:http://blogs.msdn.com/b/ie/archive/2011/10/19/handling-multi-touch-and- mouse-input-in-all-browsers.aspx

誰かが試してみて、うまくいくかどうか教えていただければ幸いです。

ただし、いくつかのコメントがあります...

SnarkMaiden2011年10月20日11:17AM#好奇心のためだけに。私はペンとタッチの両方を備えたタブレットPCを持っています-IE9では、フィールドに描くことができるペンを使用しますが、指を使用するとページをスクロールすることしかできません。それは期待される動作ですか?テッドジョンソン[MSFT]2011年10月20日午前11時28分#

@SnarkMaiden:残念ながら、そうです。これは、IE9およびIE10のドキュメントモード9で予想される動作です。IE9には、デフォルトのパンジェスチャを上書きする方法がありません。IE10の10モードには、ターゲット要素のパンとズームを無効にする新しいCSSプロパティ「-ms-content-zooming:none」があります。ところで、このブログはIE10のドキュメントモード9で実行されます。そのため、タッチを使用するIE10ユーザーでもこの動作が見られます。

そのため、デバイスで可能であっても、そのページからは機能しない可能性があります。

4

2 に答える 2

37

タッチイベントとポインターイベントの更新(Windows Phone開発者の公式ブログ投稿)をご覧ください。


編集:リンクされたドキュメントの関連部分を引用します

WebKitとInternetExplorer10は、タッチイベントの処理が異なります。WebKitは、マウス処理とは別のタッチインターフェイスをサポートしています。IE10は、タッチ、マウス、およびスタイラスを1つのインターフェイス(ポインター)にグループ化します。ポインターイベントモデルは、ポインターイベントワーキンググループの下で標準化するためにW3Cにも提出されています。それらは異なりますが、モデルは一般的に類似しているため、ポインターイベントのサポートは、通常、最小限のコード変更で追加できます。

ポインタイベントリスナーの追加

ポインタAPIは、標準の「下、移動、上」イベントモデルを使用します。したがって、既存のイベントハンドラーのリスナーをポインターイベントに接続するのは簡単です。

this.element.addEventListener("touchstart", eventHandlerName, false); 
this.element.addEventListener("touchmove", eventHandlerName, false);
this.element.addEventListener("touchend", eventHandlerName, false);

if (window.navigator.msPointerEnabled) {
  this.element.addEventListener("MSPointerDown", eventHandlerName, false);
  this.element.addEventListener("MSPointerMove", eventHandlerName, false);
  this.element.addEventListener("MSPointerUp", eventHandlerName, false);
}
this.element.addEventListener("touchstart", eventHandlerName, false);
this.element.addEventListener("touchmove", eventHandlerName, false);
this.element.addEventListener("touchend", eventHandlerName, false);

デフォルトのタッチ動作をオフにする

Internet Explorer 10のポインターイベントモデルでは、ページのどの領域にカスタムジェスチャ処理(追加したコードを使用)を使用し、どの領域にデフォルトのジェスチャ処理(ページのパン)を使用するかを明示的に指定する必要があります。これを行うには、-ms-touch-actionプロパティを使用して、デフォルトのジェスチャ処理をオプトアウトする必要がある要素にマークアップを追加します。例えば:

<div id="slider" style="overflow: hidden;">

<div id="slider" style="overflow: hidden; -ms-touch-action: none;">

なしに加えて、Windows Phone 8のIE10はpan-xおよびpan-yプロパティもサポートします。これらのプロパティは、ブラウザーが水平または垂直のジェスチャを処理し、カスタムJavaScriptハンドラーがその他すべてを処理するように指定します。

于 2012-11-16T11:26:09.897 に答える
2

これは、いくつかの例外を除いて、Windows用のIE10に似ているようです...

MSDNから、「Windows PhoneのWeb開発」

Internet Explorer for Windows Phone OS 8.0でサポートされていない機能:次の機能は、デスクトップバージョンのInternet Explorer 10でサポートされていますが、Internet Explorer for Windows PhoneOS8.0ではサポートされていません。

..。

CSSタッチビュー–具体的には、概要、スクロール、および高速スクロール。

ジェスチャイベントに関連する回転および角度イベント。

更新:更新 のリンクは、電話のIE10で機能します。SVGキャンバスのタッチはマルチタッチで描画します。(この領域ではページをスクロールしませんが、ページの残りの部分ではスクロールします)。

于 2012-11-15T12:06:15.517 に答える