Changeset 4130
- Timestamp:
- 04/01/06 23:16:10 (2 years ago)
- Files:
-
- spinoffs/scriptaculous/CHANGELOG (modified) (1 diff)
- spinoffs/scriptaculous/src/dragdrop.js (modified) (1 diff)
- spinoffs/scriptaculous/test/functional/dragdrop6_test.html (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
spinoffs/scriptaculous/CHANGELOG
r4128 r4130 1 1 *SVN* 2 3 * Add Draggable object as third parameter to snap, fixes #4074 [thx mdaines] 2 4 3 5 * Fix an IE flicker with SlideUp/SlideDown, fixes #3774, [thx sbbowers] spinoffs/scriptaculous/src/dragdrop.js
r4127 r4130 415 415 if(this.options.snap) { 416 416 if(typeof this.options.snap == 'function') { 417 p = this.options.snap(p[0],p[1] );417 p = this.options.snap(p[0],p[1],this); 418 418 } else { 419 419 if(this.options.snap instanceof Array) { spinoffs/scriptaculous/test/functional/dragdrop6_test.html
r3038 r4130 10 10 <style type="text/css" media="screen"> 11 11 div.box { background: green; width:100px; height:100px } 12 div.box-container { background: yellow; width:200px; height:200px } 12 13 </style> 13 14 </head> … … 33 34 </div> 34 35 36 <div class="box-container"> 37 <div id="box-grid-procedural-gets-draggable" class="box"> 38 snap: procedural (e.g. constrain to parent element) 39 </div> 40 </div> 41 35 42 <script type="text/javascript" language="javascript" charset="utf-8"> 36 43 // <![CDATA[ … … 46 53 revert:true 47 54 }); 55 new Draggable('box-grid-procedural-gets-draggable',{ 56 snap: function(x,y,draggable) { 57 function constrain(n, lower, upper) { 58 if (n > upper) return upper; 59 else if (n < lower) return lower; 60 else return n; 61 } 62 63 element_dimensions = Element.getDimensions(draggable.element); 64 parent_dimensions = Element.getDimensions(draggable.element.parentNode); 65 return[ 66 constrain(x, 0, parent_dimensions.width - element_dimensions.width), 67 constrain(y, 0, parent_dimensions.height - element_dimensions.height)]; 68 }, 69 revert:true 70 }); 48 71 // ]]> 49 72 </script>