From: Jean-Francois Remy Date: Wed, 1 Dec 2010 20:31:59 +0000 (-0500) Subject: Draggable: Handle scrolled windows. Fixes #6181 - Draggable: issue with containment... X-Git-Tag: 1.8.7~8 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=e01664a3820c185636a3fe7099e93e68091d24fd;p=jquery-ui.git Draggable: Handle scrolled windows. Fixes #6181 - Draggable: issue with containment on position:fixed elements. --- diff --git a/ui/jquery.ui.draggable.js b/ui/jquery.ui.draggable.js index 71698a85d..8eeaf6120 100644 --- a/ui/jquery.ui.draggable.js +++ b/ui/jquery.ui.draggable.js @@ -333,10 +333,10 @@ $.widget("ui.draggable", $.ui.mouse, { var o = this.options; if(o.containment == 'parent') o.containment = this.helper[0].parentNode; if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top + (o.containment == 'document' ? 0 : $(window).scrollLeft()) - this.offset.relative.left - this.offset.parent.left, + (o.containment == 'document' ? 0 : $(window).scrollTop()) - this.offset.relative.top - this.offset.parent.top, + (o.containment == 'document' ? 0 : $(window).scrollLeft()) + $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, + (o.containment == 'document' ? 0 : $(window).scrollTop()) + ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top ]; if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) {