Modal.DEFAULTS = {
backdrop: true,
keyboard: true,
show: true
}
Modal.prototype.draggable =
function
() {
var
$ele
= this.
$element
;
var
mouseOffset;
var
$modalDialog
=
$ele
.find(
".modal-dialog"
);
var
dialogOffset;
$ele
.find(
".modal-header"
).on(
'mousedown'
,
function
(event) {
$(this).addClass({cursor:
'move'
});
$(
'body'
).addClass(
'select'
);
dialogOffset =
$modalDialog
.offset();
mouseOffset = {
top: event.pageY - dialogOffset.top,
left: event.pageX - dialogOffset.left
};
$(
'body'
).on(
"mousemove"
,
function
(event) {
var
left = event.pageX - mouseOffset.left;
var
top = event.pageY - mouseOffset.top;
if
(left < 10) {
left = 0;
}
else
if
(left > $(window).width() -
$modalDialog
.width()) {
left = $(window).width() -
$modalDialog
.width();
}
if
(top < 10) {
top = 0;
}
else
if
(top > $(window).height() -
$modalDialog
.height()) {
top = $(window).height() -
$modalDialog
.height();
}
$modalDialog
.offset({
top: top,
left: left
});
});
});
$(document).on(
"mouseup mouseleave"
,
function
() {
$(
'body'
).off(
"mousemove"
);
});
}