js滚动到底部怎么实现?

最近在做一个聊天室的功能,当收到消息时,滚动条要滚到最底部。

这是我的代码:

//滑到底部
scrollBottom:function(id1,id2){
    this.$nextTick(() => {
        let main = document.getElementById(id1); //滚动的DOM,一般是父级
        let content = document.getElementById(id2); //子级
        main.scrollTop = content.clientHeight - main.clientHeight;
    })
},

当对方发送消息时,就会执行这方法。

如果是文本消息,可以滑动最底部
如果是图片,不能滑到最底部

我想问,为什么图片不能滑到最底部,是什么原因造成的呢?该如何解决

阅读 10k
2 个回答

因为图片加载也需要时间,初始状态 img 没有宽高,所以看上去没有效果。
你可以给图片设置默认宽高。

打印出来content.clientHeight和main.clientHeight这两个变量的值,就知道问题出在哪里了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏