Skip to content

Backtop 回到顶部

回到顶部组件,用于快速回到页面顶部。

基础用法

html
<div class="sa-backtop" data-visibility-height="400"></div>

<script>
  SaBacktop.initAll();
  // 或
  SA.init('body');
</script>
加载 SanoUI 组件中...
            
          

当页面滚动超过指定高度时,右下角会自动显示回到顶部按钮。

自定义位置

通过 data-rightdata-bottom 配置按钮位置。

html
<div class="sa-backtop" 
     data-visibility-height="400"
     data-right="40"
     data-bottom="40">
</div>

<script>
  SaBacktop.initAll();
</script>
加载 SanoUI 组件中...
            
          

手动创建

html
<div id="demo-backtop"></div>

<script>
  const backtop = new SaBacktop('#demo-backtop', {
    visibilityHeight: 400,
    right: 40,
    bottom: 40,
    onClick: () => {
      console.log('回到顶部');
    }
  });
</script>
加载 SanoUI 组件中...
            
          

API

构造函数参数

参数说明类型默认值
container容器选择器或元素string | HTMLElement-
options配置选项SaBacktopOptions{}

配置选项

参数说明类型默认值
visibilityHeight显示高度number400
right距离右边距离number40
bottom距离底部距离number40
onClick点击回调function()-

自动初始化属性

属性说明类型默认值
class="sa-backtop"启用自动初始化--
data-visibility-height显示高度number400
data-right距离右边距离number40
data-bottom距离底部距离number40

静态方法

方法名说明参数返回值
initAll初始化所有回到顶部按钮-void

方法

方法名说明参数返回值
scrollToTop滚动到顶部-void
destroy销毁实例-void

示例代码

自动初始化

html
<div class="sa-backtop" 
     data-visibility-height="400"
     data-right="40"
     data-bottom="40">
</div>

<script>
  SA.init('body');
</script>

手动创建实例

javascript
const backtop = new SaBacktop('#my-backtop', {
  visibilityHeight: 400,
  right: 40,
  bottom: 40,
  onClick: () => {
    console.log('滚动到顶部');
  }
});

// 手动滚动到顶部
backtop.scrollToTop();

实际使用场景

场景 1:长页面回到顶部

在长页面中提供回到顶部功能。

html
<div style="height: 2000px; padding: 2rem;">
  <h2>这是一个很长的页面</h2>
  <p>向下滚动页面,当滚动超过 400px 时,右下角会显示回到顶部按钮。</p>
  <div style="margin-top: 1000px;">
    <p>继续向下滚动...</p>
  </div>
</div>

<div class="sa-backtop" data-visibility-height="400"></div>

<script>
  SA.init('body');
</script>
加载 SanoUI 组件中...
            
          

场景 2:自定义位置和样式

自定义回到顶部按钮的位置和点击行为。

html
<div style="height: 2000px; padding: 2rem;">
  <h2>自定义回到顶部</h2>
  <p>滚动页面查看效果</p>
  <div style="margin-top: 1000px;">
    <p>继续向下滚动...</p>
  </div>
</div>

<div id="custom-backtop"></div>

<script>
  const backtop = new SaBacktop('#custom-backtop', {
    visibilityHeight: 400,
    right: 60,
    bottom: 60,
    onClick: () => {
      console.log('点击回到顶部');
      window.scrollTo({
        top: 0,
        behavior: 'smooth'
      });
    }
  });
</script>
加载 SanoUI 组件中...
            
          

Released under the MIT License.