diff --git a/docs/part/javascript-modal.md b/docs/part/javascript-modal.md index e92be8a5fb2d51ad4925750e6d043e7987ac9817..7d4521b6f5d009463e493228e3663dc08b9bc0ce 100644 --- a/docs/part/javascript-modal.md +++ b/docs/part/javascript-modal.md @@ -273,7 +273,7 @@ $('#myModal').modal(options) * `false`(默认),不记住位置; * `true`,记住位置; * 页面内值唯一的字符串,使用本地存储记住位置; - 当该值为一个在页面范围内值唯一的字符串时,通过浏览器本地存储来存储数据,关闭页面或浏览器之后也不会忘记。 + 启用该选项需要同时启用 `moveable` 选项,当该值为一个在页面范围内值唯一的字符串时,通过浏览器本地存储来存储数据,关闭页面或浏览器之后也不会忘记。 diff --git a/docs/part/javascript-modaltrigger.md b/docs/part/javascript-modaltrigger.md index de0bca4445cca4789f6fbd6abcf5fa7e671e6ab9..0b6178d06aa3613c03d6f639e8f0b65a27bb1743 100644 --- a/docs/part/javascript-modaltrigger.md +++ b/docs/part/javascript-modaltrigger.md @@ -402,6 +402,14 @@ myModalTrigger.show(); * `true`,启用; 是否启用对话框拖拽移动功能 + + `rememberPos` + 记住移动的位置 + * `false`(默认),不记住位置; +* `true`,记住位置; +* 页面内值唯一的字符串,使用本地存储记住位置; + 启用该选项需要同时启用 `moveable` 选项,当该值为一个在页面范围内值唯一的字符串时,通过浏览器本地存储来存储数据,关闭页面或浏览器之后也不会忘记。 + `waittime` 加载远程内容时的最大等待时间 diff --git a/src/js/modal.js b/src/js/modal.js index d5d225aba204ab34922488e9c4a2ef5c9a5e095f..26ace28a3a517cbc778c483e071ec9e99b9a140a 100644 --- a/src/js/modal.js +++ b/src/js/modal.js @@ -74,11 +74,12 @@ var topPos = position == 'fit' ? (half * 2 / 3) : (position == 'center' ? half : position); if($dialog.hasClass('modal-moveable')) { var pos = null; - if(this.options.rememberPos) { - if(this.options.rememberPos === true) { + var rememberPos = this.options.rememberPos; + if(rememberPos) { + if(rememberPos === true) { pos = this.$element.data('modal-pos'); } else if($.zui.store) { - pos = $.zui.store.pageGet(zuiname + '.rememberPos'); + pos = $.zui.store.pageGet(zuiname + '.rememberPos.' + rememberPos); } } if(!pos) { @@ -108,10 +109,11 @@ $dialog.css('margin-top', '').addClass('modal-dragged'); }, finish: function(e) { - if(options.rememberPos) { + var rememberPos = options.rememberPos; + if(rememberPos) { that.$element.data('modal-pos', e.pos); - if($.zui.store && options.rememberPos !== true) { - $.zui.store.pageSet(zuiname + '.rememberPos', e.pos); + if($.zui.store && rememberPos !== true) { + $.zui.store.pageSet(zuiname + '.rememberPos.' + rememberPos, e.pos); } } } diff --git a/src/js/modal.trigger.js b/src/js/modal.trigger.js index c0c125795b3a8437b269cf6627c638e07a43223b..f71c2ee27add61b23fedbe385163616eb4edc3a1 100644 --- a/src/js/modal.trigger.js +++ b/src/js/modal.trigger.js @@ -278,10 +278,11 @@ } $modal.modal({ - show: 'show', - backdrop: options.backdrop, - moveable: options.moveable, - keyboard: options.keyboard + show : 'show', + backdrop : options.backdrop, + moveable : options.moveable, + rememberPos: options.rememberPos, + keyboard : options.keyboard }); };