Skip to content
Permalink
Browse files

draggable,sortable: fixed containment "document", added containment: …

…"window" (fixes #2936,#2171)
  • Loading branch information
Paul Bakaus
Paul Bakaus committed Jun 7, 2008
1 parent 68d3756 commit 7539a095f66413cc7359303b8a1ef74ec98332d9
Showing with 14 additions and 2 deletions.
  1. +7 −1 ui/ui.draggable.js
  2. +7 −1 ui/ui.sortable.js
@@ -103,7 +103,13 @@ $.widget("ui.draggable", $.extend($.ui.mouse, {

if(o.containment) {
if(o.containment == 'parent') o.containment = this.helper[0].parentNode;
if(o.containment == 'document') this.containment = [0,0,$(document).width(), ($(document).height() || document.body.parentNode.scrollHeight)];
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.offset.relative.left - this.offset.parent.left - this.helperProportions.width - this.margins.left - (parseInt(this.element.css("marginRight"),10) || 0),
($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.offset.relative.top - this.offset.parent.top - this.helperProportions.height - this.margins.top - (parseInt(this.element.css("marginBottom"),10) || 0)
];

if(!(/^(document|window|parent)$/).test(o.containment)) {
var ce = $(o.containment)[0];
var co = $(o.containment).offset();
@@ -355,7 +355,13 @@ $.widget("ui.sortable", $.extend($.ui.mouse, {

if(o.containment) {
if(o.containment == 'parent') o.containment = this.helper[0].parentNode;
if(o.containment == 'document') this.containment = [0,0,$(document).width(), ($(document).height() || document.body.parentNode.scrollHeight)];
if(o.containment == 'document' || o.containment == 'window') this.containment = [
0 - this.offset.parent.left,
0 - this.offset.parent.top,
$(o.containment == 'document' ? document : window).width() - this.offset.parent.left - this.helperProportions.width - this.margins.left - (parseInt(this.element.css("marginRight"),10) || 0),
($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.offset.parent.top - this.helperProportions.height - this.margins.top - (parseInt(this.element.css("marginBottom"),10) || 0)
];

if(!(/^(document|window|parent)$/).test(o.containment)) {
var ce = $(o.containment)[0];
var co = $(o.containment).offset();

0 comments on commit 7539a09

Please sign in to comment.
You can’t perform that action at this time.