2 * jqDnR - Minimalistic Drag'n'Resize for jQuery.
\r
4 * Copyright (c) 2007 Brice Burgess <bhb@iceburg.net>, http://www.iceburg.net
\r
5 * Licensed under the MIT License:
\r
6 * http://www.opensource.org/licenses/mit-license.php
\r
8 * $Version: 2007.02.09 +r1
\r
11 $.fn.jqDrag=function(r){$.jqDnR.init(this,r,'d'); return this;};
\r
12 $.fn.jqResize=function(r){$.jqDnR.init(this,r,'r'); return this;};
\r
14 init:function(w,r,t){ r=(r)?$(r,w):w;
\r
15 r.bind('mousedown',{w:w,t:t},function(e){ var h=e.data; var w=h.w;
\r
16 hash=$.extend({oX:f(w,'left'),oY:f(w,'top'),oW:f(w,'width'),oH:f(w,'height'),pX:e.pageX,pY:e.pageY,o:w.css('opacity')},h);
\r
17 h.w.css('opacity',0.8); $().mousemove($.jqDnR.drag).mouseup($.jqDnR.stop);
\r
20 drag:function(e) {var h=hash; var w=h.w[0];
\r
21 if(h.t == 'd') h.w.css({left:h.oX + e.pageX - h.pX,top:h.oY + e.pageY - h.pY});
\r
22 else h.w.css({width:Math.max(e.pageX - h.pX + h.oW,0),height:Math.max(e.pageY - h.pY + h.oH,0)});
\r
24 stop:function(){var j=$.jqDnR; hash.w.css('opacity',hash.o); $().unbind('mousemove',j.drag).unbind('mouseup',j.stop);},
\r
27 var f=function(w,t){return parseInt(w.css(t)) || 0};
\r