Skip to content

Latest commit

 

History

History
17 lines (13 loc) · 584 Bytes

检查元素是否可滚动.md

File metadata and controls

17 lines (13 loc) · 584 Bytes

检查元素是否可滚动

如果 ele 元素可滚动,则以下函数返回 true

const isScrollable = (ele) => {
  // 比较高度以查看元素是否具有可滚动内容
  const hasScrollableContent = ele.scrollHeight > ele.clientHeight

  // 考虑元素的 overflow-y 样式是否设置为 hidden 或 hidden !important
  // 在这些情况下,不会显示滚动条。
  const overflowYStyle = window.getComputedStyle(ele).overflowY
  const isOverflowHidden = overflowYStyle.indexOf('hidden') !== -1

  return hasScrollableContent && !isOverflowHidden
}