Heim > Artikel > Web-Frontend > Wie erreicht jquery jedes Mal einen Sprung nach links, wenn beim Ziehen eine Mausbewegung auftritt?
jQuery hat ein Drag-and-Drop geschrieben, aber jedes Mal, wenn die Mausbewegung ausgeführt wird, gibt es immer einen Sprung nach links. Wie kann es keinen solchen Sprung geben?
.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'); }) })
Das untergeordnete Element divItem befindet sich über der divBox.
Wenn sich die Maus zum divItem bewegt, wurde es bereits von der divBox zu einem anderen Element bewegt divBox. Lösen Sie dann das Mouseover-Ereignis von divItem aus.
Ihre Bedürfnisse können nicht direkt realisiert werden. Versuchen Sie, einen anderen Weg zu finden, um den gewünschten Effekt zu erzielen.
1. Die durch Mouseover von divBox aufgerufene Methode kann im Mouseover-Ereignis von divItem aufgerufen werden.
2. Wofür wird Ihr divItem verwendet? Kann es durch das Hintergrundbild der divBox ersetzt werden?
3. Oder legen Sie die Position:absolute aller Divs fest, stellen Sie dann den
Z-Index der divBox so ein, dass er größer ist als der Z-Index des divItem, und legen Sie dann die divBox fest bis zur halbtransparenten Form.
Das obige ist der detaillierte Inhalt vonWie erreicht jquery jedes Mal einen Sprung nach links, wenn beim Ziehen eine Mausbewegung auftritt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!