el-scrollbar搭配el-backtop滚动到最顶/最底 & el-scrollbar在focus时出现黑框的解决办法

如何搭配 el-scrollbar 和 el-backtop,使其点击后滚动到底部:

html 复制代码
<template>
  <!-- 一个el-scrollbar区域,其ref是chatArea -->
  <el-scrollbar @scroll="(e: any) => { tempHeight = e.scrollTop }" ref="chatArea" always>
  </el-scrollbar>
	<el-backtop :right="40" :bottom="195" :visibility-height="0" @click="goToPlace" />
	<!-- 如果要滚动到最顶部,则可以将goToPlace中的top设为0,或者直接用target -->
  <!-- <el-backtop :right="40" :bottom="195" :visibility-height="0" target=".chat-area .el-scrollbar__wrap" /> -->
</template>
<script>
const goToPlace = () => {
  chatArea.value!.scrollTo({
    top: chatArea.value.wrapRef.scrollHeight,
    behavior: 'smooth'
  })
}
</script>
<style scoped lang="scss">
  /** 如果是要滚动到最底部,则应该让svg箭头图标指向下方 */
  :deep(.el-backtop svg) {
    transform: rotate(180deg);
  }
</style>

另外,当鼠标单击被el-scrollbar包围的区域,然后按下enter键,会发现这时el-scrollbar区域被一圈黑框围起来了,其实这是它的outline属性没被隐藏。解决办法:

css 复制代码
:deep(.el-scrollbar__wrap.el-scrollbar__wrap--hidden-default:focus) {
  outline: none;
}
相关推荐
影子信息1 小时前
vue 前端动态导入文件 import.meta.glob
前端·javascript·vue.js
青阳流月1 小时前
1.vue权衡的艺术
前端·vue.js·开源
RunsenLIu1 小时前
基于Vue.js + Node.js + MySQL实现的图书销售管理系统
vue.js·mysql·node.js
样子20181 小时前
Vue3 之dialog弹框简单制作
前端·javascript·vue.js·前端框架·ecmascript
kevin_水滴石穿1 小时前
Vue 中报错 TypeError: crypto$2.getRandomValues is not a function
前端·javascript·vue.js
翻滚吧键盘1 小时前
vue文本插值
javascript·vue.js·ecmascript
华子w9089258591 小时前
基于 SpringBoot+Vue.js+ElementUI 的 “花开富贵“ 花园管理系统设计与实现7000字论文
vue.js·spring boot·elementui
老家的回忆4 小时前
jsPDF和html2canvas生成pdf,组件用的elementplus,亲测30多页,20s实现
前端·vue.js·pdf·html2canvas·jspdf
hackchen5 小时前
从0到1解锁Element-Plus组件二次封装El-Dialog动态调用
前端·vue.js·elementui
用户7579419949705 小时前
Vue响应式原理推导过程
vue.js·响应式设计