【问题标题】:Make box with scroll start scrolled to bottom使滚动开始的框滚动到底部
【发布时间】:2014-04-10 21:07:35
【问题描述】:

我正在为聊天网络应用构建用户界面。所以有一个 div,其中消息显示在列表中,用户可以滚动浏览它。但由于它是一个消息传递应用程序,如果用户不做任何事情(从页面加载到用户滚动),我希望 div 滚动到底部 - 如果 div 可以继续滚动到用户再次滚动到底部时的底部。

我该如何编码? (最好只使用 css 和 html 而不是使用 javascript)

(对不起,我的语法不好,我不是来自英语国家)

【问题讨论】:

    标签: javascript html css user-interface chat


    【解决方案1】:

    如果是底部带有form 的聊天框,您可以在form 元素之一上设置focus或在聊天框中生成的最后一个文本。: http://codepen.io/gc-nomade/pen/CztIx/

    onload= function() {
      frmfcs =document.getElementById('form1');
      frmfcs.focus();
    } 
    

    如果它是跨浏览器,属性 autofocus 本来是一个选项:这是我的旧测试之一:http://dabblet.com/gist/5271266

    【讨论】:

    • 用途:命名函数并从更新内容函数中调用它
    • 我想一直将表单保持在视口的底部(我正在使用position:fixed 来完成此操作)但我可以使用相同的方法在最后一条消息上设置focus列表并得到相同的结果?
    • 在示例中使用tabindex 做什么?有必要吗?我正在尝试关注列表的最后一个元素并且没有错误,但没有任何反应
    • tabindex 属性允许li 使用focus,否则只有链接和form 元素使用它。
    • 还有比将属性添加到每个列表元素更好的方法来使li 元素具有焦点吗?有什么 CSS 规则吗?
    【解决方案2】:
    var element = document.getElementById('name');
    element.scrollTop = element.offsetHeight
    

    不幸的是,到目前为止,纯 CSS 是不可能的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-01
      • 1970-01-01
      • 2014-12-12
      • 1970-01-01
      • 2017-02-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多