【问题标题】:jquery maintain scroll position for modal dialogjquery维护模态对话框的滚动位置
【发布时间】:2011-01-17 22:58:29
【问题描述】:

如果用户未通过身份验证并单击只有经过身份验证的用户才能执行的操作,那么我正在加载一个模式对话框,说明他们需要登录才能执行此操作。

模态框包含一个链接,单击该链接将加载带有登录表单的模态对话框。

这就是我所拥有的:

$("#login-link").click(function () {
        $("#dialog-unauthenticated").dialog("close");
        var x = $(this).position().left + jQuery(this).outerWidth();
        var y = $(this).position().top - jQuery(document).scrollTop();
        $("#dialog-form").dialog("open",{position:[x,y]});

    });

它工作正常,唯一的问题是页面不保持滚动位置。 对话框加载在正确的位置。

如何保持页面滚动位置而不是滚动到顶部?

【问题讨论】:

标签: javascript jquery jquery-ui


【解决方案1】:

当打开第一个模态(或之前)时 - 将页面(文档?document.body?)滚动位置保存到一些变量中。 然后,在您的 $("#login-link").click() 函数上,将其设置为您保存的那些值。 抱歉,我没有给你的代码,但基本上都是

$(document).scrollTop() 
// or
$(document.body).scrollTop()
// or even without the $ function!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-14
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 1970-01-01
    • 2012-02-14
    • 2012-12-23
    相关资源
    最近更新 更多