重新打开时,如何将可滚动div的滚动位置保持在模态对话框中?
我修改了simplemodal的基本可下载示例,如下所示:
<div id="basic-modal-content">
<h3>Scrollable Modal Dialog</h3>
<div style="width: 150px; height:100px; overflow: auto;">
a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>a<br>
</div>
</div>
答案 0 :(得分:2)
我使用Simple Modal测试了这个解决方案,它可以正常工作
如果您正在使用Basic Dialog演示,只需更改此代码的basic.js
文件即可。它只是在对话框关闭之前获取scrollTop
,并在对话框重新打开时重置它。由于SimpleModal的工作方式,我们每次都必须调用div的完整选择器:
$(document).ready(function () {
var scrollTop = null;
$('#basic-modal input.basic, #basic-modal a.basic').click(function (e) {
e.preventDefault();
$('#basic-modal-content').modal({
onShow: function(){
if(scrollTop !== null) $('#basic-modal-content > div').scrollTop(scrollTop);
},
onClose: function(){
scrollTop = $('#basic-modal-content > div').scrollTop();
$.modal.close();
}
});
});
});