3

このdraggable属性は、タッチ デバイスのブラウザーでは効果がないようです。

<div draggable="true">Draggable Box</div>

https://jsfiddle.net/41z5uz4t/

マウスを使って、この要素をドラッグできます。タッチ スクリーン (Windows 10、Chrome) でドラッグしようとすると、戻るなどの通常のタッチ イベントが優先されるようです。私はそれを保持してからドラッグしようとしました。これもうまくいきません。

Chrome でこの動作を修正するためのポリフィルはありますか? 私は何か違うことをしているはずですか?

4

2 に答える 2

2

Draggable 属性は「実験的な技術」であり、現在、主要なモバイル ブラウザーのいずれでもサポートされていません。

Drag'n'Drop UI を作成したい場合は、そのためにいくつかの JS ライブラリを使用する必要があります。たとえば、greensock の素敵なライブラリ、jQuery UIを使用した Touchpunch などです。

ドラッグ可能な属性は現在、主要なモバイル ブラウザーではサポートされていないことを明確にします。

編集:

あなたのようなタッチスクリーンデバイスを備えたChromeのバグのようです。おそらく役立つ解決策を見つけました:

chrome://flags に移動し、[タッチ イベントを有効にする] 設定を [自動] から [有効] に変更します。Chrome の現在のバージョンは、明らかに Windows 10 のタッチ機能を検出しません。

ここにあります。

それでも、それが実験的な属性である場合は、そのアクションに js ライブラリを使用することをお勧めします。

于 2016-11-28T00:14:06.807 に答える
1

jQuery を使用して、この効果を実現できます。これを行う方法のガイドは次のとおりです。

http://touchpunch.furf.com/

ドラッグ可能なオブジェクトのある行の前に、次のコードを挿入します。

<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script src="http://code.jquery.com/ui/1.8.21/jquery-ui.min.js"></script>

そして、ドラッグ可能なオブジェクトのある行の後にこれを置きます:

<script>$('#draggablebox').draggable();</script>、 div に id があると仮定しdraggableboxます。

于 2016-11-28T00:15:52.537 に答える