jQuery UI の Sortable 動作を使用していますが、元のハンドル (その時点では表示されていません) 以外の別の要素との相互作用からソート可能なドラッグ動作を開始する必要がある状況に遭遇しました。いくつかの投稿での提案とjquery.simulate.js (公式の jQUI テストの実行に使用) の使用のおかげで、これを達成する方法をまとめることができました。IE8 を除くほとんどすべてのブラウザーで、並べ替え可能なドラッグ プロセスを手続き的に開始できます。以下、次のようにイベントをシミュレートします。
item.simulate('mousedown',pos).simulate('mousemove',{ clientX: pos.clientX+1, clientY: pos.clientY});
問題: IE8 (またはそれ以下) では、外側の「ハンドル」との相互作用と mousedown および mousemove イベントのシミュレーションの後、ドラッグは実際には正しく開始されますが、ユーザーが実際にマウスを何らかの方法/形状/フォームに動かすとすぐに、「マウスアップ」イベントが発生して終了したかのように、ドラッグが停止またはキャンセルされます。これは、古いfireEvent(IE8-)メソッドと他のすべてが使用するdispatchEventの根本的な違いによるものだと強く思いますが、その方法やそれを防ぐことが可能かどうかはわかりません。
私が探しているのは、これを修正するために何ができるかのスニペット、またはこれがなぜ起こっているのか、キャンセルを防ぐための何らかの回避策があるかどうかについての提案です (他のブラウザで発生する動作など) fireEvent の代わりに dispatchEvent を使用します)。
説明されている状況の成功 (最近のブラウザー) または失敗の小さな例をまとめました:デモ
TL;DR : (上記の jquery.simulate.js を介して) jQUI ソート可能なドラッグを手続き的に開始する小さな方法をまとめましたが、IE8 では機能しないか、キャンセルされます。それを克服する方法についてのガイダンスや提案が必要です。上記のデモを確認