【问题标题】:Dynamically scrolling a DIV layer down when data is loaded加载数据时动态向下滚动 DIV 层
【发布时间】:2011-12-09 21:53:28
【问题描述】:

我编写了一个聊天脚本,花了几个月的时间来了解如何在带有 AJAX 扩展的 ASP.NET 中使用 Databinder with Repreater 向 DIV 层加载一些数据时向下滚动。

我今天读了一篇博客,作者只给了我逻辑而不是代码,而且我不是编写高端 JavaScript 的专家。任何人都可以帮助我构建它。

  1. 获取滚动条位置。
  2. 如果滚动条位置不是底部,则移动到底部。
  3. 如果滚动条向上滚动,则在将新项目加载到 Databinder 之前不要执行任何操作。

谁能提供以上三个的语法。


或者如果有任何其他方法可以解决我的问题,请告诉我。

【问题讨论】:

    标签: javascript asp.net ajax


    【解决方案1】:

    您可以在原生 JS 中使用 scrollTop 属性,在 jQuery 中使用 $(selector).scrollTop() 方法。在这两种情况下,您都可以为其分配一个值来更改该元素的滚动位置。

    示例:

    document.getElementById("myDiv").scrollTop = 100;
    $("#myDiv").scrollTop(100);
    

    编辑

    var div = document.getElementById('myDiv');
    var scrollHeight = div.scrollHeight;
    var scrollTop = div.scrollTop;
    var height = parseInt(div.style.height);
    if(scrollHeight - (scrollTop + height) == 0) {
        // do something when you're at the bottom
    } else {
        // do something when you're NOT at the bottom
    }
    

    【讨论】:

    • 感谢您的回答海纳。我需要一个带有IF 条件的JavaScript,如果滚动条位置当前不是底部,则向下滚动到底部。你能帮我写代码吗?
    猜你喜欢
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 2016-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-14
    相关资源
    最近更新 更多