可以说有一个可拖动的对象只能在一个轴上拖动.
有没有办法以编程方式移动它?要么开始,要么是三角洲.当然我可以去改变它的css left属性,但这不会触发jQuery提供的拖动事件.
我期待找到一个dragBy(x,y)方法到draggable.
这是一个例子:http://jsfiddle.net/odyodyodys/daHU8/
HTML:
<div id="theButton">Reset position</div> <div id="theDiv">Lorem ipsum dolor sit amet</div>
JS:
$("#theDiv").draggable({ axis: "x",cursor: "pointer" });
CSS:
#theDiv { display:block; width: 100px; height: 100px; overflow: hidden; margin-top: 80px; background-color: green; } #theButton { border: 1px solid; width:80px; cursor: pointer; }
有没有办法将可拖动元素(这里的theDiv)移动三角形或移动到x轴后的初始位置?
解决方法
DEMO
使用额外的JavaScript源可以实现您的目标.
来自jQuery UI:
jquery.simulate.js
来自第三方:
资料来源:http://j-ulrich.github.io/jquery-simulate-ext/
jquery.simulate.ext.js
jquery.simulate.drag-n-drop.js
j-ulrich的道具让它变得如此简单.
function dragTo(x,y) { $("#draggable").simulate("drag-n-drop",{dx: x,dy: y,interpolation: { stepWidth: 1,stepDelay: 1}}); }