Results 1 to 1 of 1

Thread: Dragable Popup

  1. #1
    Join Date
    Feb 2012
    Posts
    1
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default Dragable Popup

    hi all,

    i am using below code for dragable popup but it is going outside the window. please help to stop outside to window.

    Code:
    (function($) {
    $.fn.jqm=function(o){
    var p={
    overlay: 50,
    overlayClass: 'jqmOverlay',
    closeClass: 'jqmClose',
    trigger: '.jqModal',
    ajax: F,
    ajaxText: '',
    target: F,
    modal: F,
    toTop: F,
    onShow: F,
    onHide: F,
    onLoad: F
    };
    return this.each(function(){if(this._jqm)return H[this._jqm].c=$.extend({},H[this._jqm].c,o);s++;this._jqm=s;
    H[s]={c:$.extend(p,$.jqm.params,o),a:F,w:$(this).addClass('jqmID'+s),s:s};
    if(p.trigger)$(this).jqmAddTrigger(p.trigger);
    });};
    
    $.fn.jqmAddClose=function(e){return hs(this,e,'jqmHide');};
    $.fn.jqmAddTrigger=function(e){return hs(this,e,'jqmShow');};
    $.fn.jqmShow=function(t){return this.each(function(){t=t||window.event;$.jqm.open(this._jqm,t);});};
    $.fn.jqmHide=function(t){return this.each(function(){t=t||window.event;$.jqm.close(this._jqm,t)});};
    
    $.jqm = {
    hash:{},
    open:function(s,t){var h=H[s],c=h.c,cc='.'+c.closeClass,z=(parseInt(h.w.css('z-index'))),z=(z>0)?z:3000,o=$('<div></div>').css({height:'100%',width:'100%',position:'fixed',left:0,top:0,'z-index':z-1,opacity:c.overlay/100});if(h.a)return F;h.t=t;h.a=true;h.w.css('z-index',z);
     if(c.modal) {if(!A[0])L('bind');A.push(s);}
     else if(c.overlay > 0)h.w.jqmAddClose(o);
     else o=F;
    
     h.o=(o)?o.addClass(c.overlayClass).prependTo('body'):F;
     if(ie6){$('html,body').css({height:'100%',width:'100%'});if(o){o=o.css({position:'absolute'})[0];for(var y in {Top:1,Left:1})o.style.setExpression(y.toLowerCase(),"(_=(document.documentElement.scroll"+y+" || document.body.scroll"+y+"))+'px'");}}
    
     if(c.ajax) {var r=c.target||h.w,u=c.ajax,r=(typeof r == 'string')?$(r,h.w):$(r),u=(u.substr(0,1) == '@')?$(t).attr(u.substring(1)):u;
      r.html(c.ajaxText).load(u,function(){if(c.onLoad)c.onLoad.call(this,h);if(cc)h.w.jqmAddClose($(cc,h.w));e(h);});}
     else if(cc)h.w.jqmAddClose($(cc,h.w));
    
     if(c.toTop&&h.o)h.w.before('<span id="jqmP'+h.w[0]._jqm+'"></span>').insertAfter(h.o);	
     (c.onShow)?c.onShow(h):h.w.show();e(h);return F;
    },
    close:function(s){var h=H[s];if(!h.a)return F;h.a=F;
     if(A[0]){A.pop();if(!A[0])L('unbind');}
     if(h.c.toTop&&h.o)$('#jqmP'+h.w[0]._jqm).after(h.w).remove();
     if(h.c.onHide)h.c.onHide(h);else{h.w.hide();if(h.o)h.o.remove();} return F;
    },
    params:{}};
    var s=0,H=$.jqm.hash,A=[],ie6=$.browser.msie&&($.browser.version == "6.0"),F=false,
    i=$('<iframe src="javascript:false;document.write(\'\');" class="jqm"></iframe>').css({opacity:0}),
    e=function(h){if(ie6)if(h.o)h.o.html('<p style="width:100%;height:100%"/>').prepend(i);else if(!$('iframe.jqm',h.w)[0])h.w.prepend(i); f(h);},
    f=function(h){try{$(':input:visible',h.w)[0].focus();}catch(_){}},
    L=function(t){$()[t]("keypress",m)[t]("keydown",m)[t]("mousedown",m);},
    m=function(e){var h=H[A[A.length-1]],r=(!$(e.target).parents('.jqmID'+h.s)[0]);if(r)f(h);return !r;},
    hs=function(w,t,c){return w.each(function(){var s=this._jqm;$(t).each(function() {
     if(!this[c]){this[c]=[];$(this).click(function(){for(var i in {jqmShow:1,jqmHide:1})for(var s in this[i])if(H[this[i][s]])H[this[i][s]].w[i](this);return F;});}this[c].push(s);});});};
    })(jQuery);
    
    
    
    //----------------
    
    /*
     * jqDnR - Minimalistic Drag'n'Resize for jQuery.
     *
     * Copyright (c) 2007 Brice Burgess <bhb@iceburg.net>, http://www.iceburg.net
     * Licensed under the MIT License:
     * http://www.opensource.org/licenses/mit-license.php
     * 
     * $Version: 2007.08.19 +r2
     */
    
    (function($){
    $.fn.jqDrag=function(h){return i(this,h,'d');};
    $.fn.jqResize=function(h){return i(this,h,'r');};
    $.jqDnR={dnr:{},e:0,
    drag:function(v){
    	
     if(M.k == 'd')E.css({left:M.X+v.pageX-M.pX,top:M.Y+v.pageY-M.pY});
     
     else E.css({width:Math.max(v.pageX-M.pX+M.W,0),height:Math.max(v.pageY-M.pY+M.H,0)});
      return false;},
    stop:function(){E.css('opacity',M.o);$().unbind('mousemove',J.drag).unbind('mouseup',J.stop);}
    };
    var J=$.jqDnR,M=J.dnr,E=J.e,
    i=function(e,h,k){return e.each(function(){h=(h)?$(h,e):e;
     h.bind('mousedown',{e:e,k:k},function(v){var d=v.data,p={};E=d.e;
     // attempt utilization of dimensions plugin to fix IE issues
     if(E.css('position') != 'relative'){try{E.position(p);}catch(e){}}
     M={X:p.left||f('left')||0,Y:p.top||f('top')||0,W:f('width')||E[0].scrollWidth||0,H:f('height')||E[0].scrollHeight||0,pX:v.pageX,pY:v.pageY,k:d.k,o:E.css('opacity')};
     E.css({opacity:0.8});$().mousemove($.jqDnR.drag).mouseup($.jqDnR.stop);
     return false;
     });
    });},
    f=function(k){return parseInt(E.css(k))||false;};
    })(jQuery);
    Last edited by jscheuer1; 02-07-2012 at 04:30 PM. Reason: Format

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •