【问题标题】:jQuery jqModal full window pop up browser scroll issuejQuery jqModal全窗口弹出浏览器滚动问题
【发布时间】:2012-09-12 10:46:00
【问题描述】:

抱歉,缺少代码,但基本上我正在使用 jqModal 插件,它工作得很好,正如预期的那样,但是我只是一个关于它的问题,希望有人能解释一下我如何解决我的问题。

基本上,我的弹出窗口是浏览器的 100% 宽度和高度,但是浏览器滚动条仍然反映我原始网页的高度,而不是 jqModal,关于如何更改它的任何想法?谢谢!

【问题讨论】:

    标签: jquery jqmodal


    【解决方案1】:

    在打开对话框时更改滚动位置将解决您的问题

    $('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');  
    

    【讨论】:

      【解决方案2】:

      感谢您提供 Murali 的意见,但我找到了另一种解决方法。基本上,我决定在触发弹出窗口时隐藏正文滚动条,然后在弹出 div 中添加滚动条。关闭弹出窗口后,我重新应用正文滚动条,这是一种享受。感谢您花时间查看并回答我的问题。 :)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多