对于缺乏代码感到抱歉,但基本上我使用的是jqModal插件并且它工作得很好,正如预期的那样,但我只是一个关于它的问题,并希望有人可以解释我如何解决我的问题。
基本上,我的弹出窗口是浏览器的100%宽度和高度,但是浏览器滚动条仍然反映了我原始网页的高度而不是jqModal,有关如何更改此内容的任何想法?谢谢!
答案 0 :(得分:2)
打开对话框时更改滚动位置将解决您的问题
$('dailog-div').dialog(
autoOpen: false,
open: function () {
var scrollPosition = [self.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft, self.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop];
var html = jQuery('html'); // it would make more sense to apply this to body, but IE7 won't have that
html.data('scroll-position', scrollPosition);
html.data('previous-overflow', html.css('overflow'));
html.css('overflow', 'hidden');
window.scrollTo(scrollPosition[0], scrollPosition[1]);
},
close: function () {
var html = jQuery('html');
var scrollPosition = html.data('scroll-position');
html.css('overflow', html.data('previous-overflow'));
window.scrollTo(scrollPosition[0], scrollPosition[1]);
$(this).dialog('destroy').remove();
}
}).dialog('open');
答案 1 :(得分:1)
感谢您输入Murali,但我找到了另一种解决方法。基本上,我决定在触发弹出窗口时隐藏正文滚动条,然后向弹出窗口添加滚动条。关闭弹出窗口后,我重新应用了身体滚动条,这是一种享受。感谢您抽出宝贵时间来回顾我的问题。 :)