可以说有一个可拖动的对象只能在一个轴上拖动.
有没有办法以编程方式移动它?要么开始,要么是三角洲.当然我可以去改变它的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轴后的初始位置?
解决方法
@L_404_1@
使用额外的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}});
- }