Core
Native
Class
Element
Utilities
Fx
Request
Plugins
- Fx.Slide
- Fx.Scroll
- Fx.Elements
- Drag
- Drag.Move
- Color
- Group
- Hash.Cookie
- Sortables
- Tips
- SmoothScroll
- Slider
- Scroller
- Assets
- Accordion
要素をドラッグするために、Dragクラスをベースに関数を追加し、拡張したもの。スナップとドロップをサポートしています。 Dragからメソッド、プロパティ、オプション、イベントを継承します。
var myMove = new Drag.Move(myElement[, options]);
var myDrag = new Drag.Move('draggable', { droppables: '.droppable', onDrop: function(element, droppable){ if (!droppable) console.log(element, ' dropped on nothing'); else console.log(element, 'dropped on', droppable); }, onEnter: function(element, droppable){ console.log(element, 'entered', droppable); }, onLeave: function(element, droppable){ console.log(element, 'left', droppable); } });
要素がdroppable要素の上にあるかをチェックして、該当すればdropイベントを発生させます。そうでなければ、この要素に添附されている'emptydrop'イベントを発生させます。最終的にDragクラスのstopメソッドを実行します。
myMove.stop();
var myElement = $('myElement').addEvent('emptydrop', function(){ alert('no drop occurred'); }); var myMove = new Drag.Move(myElement, { onSnap: function(){ //MooToolの継承ルールにより、すべてのDragイベントを使うことができます。 this.moved = this.moved || 0; this.moved++; if(this.moved > 1000){ alert("You've gone far enough."); this.stop(); } } });
$関数で取得したDOM要素がこれらのすべてのメソッドを使えるようにするカスタムネイティブです。
提供されたオプションを使って、要素にドラッグ&ムーブの機能を付け加えます。
var myDrag = myElement.makeDraggable([options]);
var myDrag = $('myElement').makeDraggable({ onComplete: function(){ alert('done dragging'); } });
このドキュメントはMooToolsのドキュメントを元に高橋文樹が翻訳(ちょっと改変)しました。
本家と同じく、Attribution-NonCommercial-ShareAlike 3.0ライセンスで公表されています。