ホームページ >ウェブフロントエンド >jsチュートリアル >ドラッグ中にmousemoveが発生するたびに、jqueryはどのようにして左へのジャンプを実現しますか?
jQuery はドラッグを記述しましたが、mousemove が行われるたびに常に左へのジャンプが発生します。そのようなジャンプが存在しないはずはありません。
.wrap{ width:328px; position: absolute; left:50%; top:30%; margin-left:-164px; //应该是这个margin-left造成的 padding:10px; background:#eeeeee; border-radius: 10px; } //js $('.wrap').on('mousedown',function(e){ var _this=$(this) disX=e.clientX-$(this).offset().left; disY=e.clientY-$(this).offset().top; $(document).on('mousemove',function(e){ _this.css('left',e.clientX-disX) _this.css('top',e.clientY-disY) }); $(document).on('mouseup',function(){ $(this).unbind('mousemove'); }) })
divItem 子要素は divBox の上にあります。
マウスが divItem に移動すると、divBox から別の要素に移動します。
まず divBox の Mouseout イベントをトリガーし、次に divItem の Mouseover イベントをトリガーします。 。
あなたのニーズを直接実現することはできません。あなたが望む効果を達成する別の方法がないかどうかを確認してください。
1. divBoxのmouseoverで呼び出されるメソッドをdivItemのmouseoverイベントで呼び出すことができます。
2. divItem は何に使用されますか? divBox の背景画像に置き換えることはできますか?
3. または、すべての div の location:absolute を設定し、divBox の z-index を divItem の z-index より大きく設定し、その後 divBox を半透明に設定します。
長い間コードを見た後、CSSを削除して問題ありませんでした。それからmargin-left:-164pxを削除するか、負でない数値に変更しました。
以上がドラッグ中にmousemoveが発生するたびに、jqueryはどのようにして左へのジャンプを実現しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。