要实现在uni-app中点击tab标签实现锚点效果,可以使用uni-app提供的scroll-into-view方法。

首先,在页面的<template>中定义tab标签和对应的锚点内容,例如:

<template>
  <view>
    <scroll-view scroll-y="true" :scroll-into-view="currentTab" :scroll-with-animation="true" style="height: 100vh">
      <view id="tab1">
        <!-- tab1的内容 -->
      </view>
      <view id="tab2">
        <!-- tab2的内容 -->
      </view>
      <view id="tab3">
        <!-- tab3的内容 -->
      </view>
    </scroll-view>
    <view>
      <button @click="changeTab('tab1')">Tab1</button>
      <button @click="changeTab('tab2')">Tab2</button>
      <button @click="changeTab('tab3')">Tab3</button>
    </view>
  </view>
</template>

然后,在页面的<script>中定义currentTabchangeTab方法,用于控制当前显示的tab标签和滚动到锚点位置,例如:

<script>
export default {
  data() {
    return {
      currentTab: 'tab1'
    }
  },
  methods: {
    changeTab(tab) {
      this.currentTab = tab;
    }
  }
}
</script>

最后,在changeTab方法中,将currentTab的值改为对应的锚点id,即可实现点击tab标签滚动到对应锚点的效果。

注意:为了实现滚动效果,需要给scroll-view设置一个固定的高度,例如style="height: 100vh"

以上就是在uni-app中实现点击tab标签跳转到锚点的方法

uniapp点击tab标签实现锚点

原文地址: https://www.cveoy.top/t/topic/ir0Y 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录