Vue 列表滚动

这是大佬的文档地址

npm install vue-seamless-scroll --save
import vueSeamlessScroll from 'vue-seamless-scroll'
<template>
    <vue-seamless-scroll :data="listData" :class-option="classOption" class="seamless-warp">
        <ul class="item">
            <li v-for="item in listData">
                <span class="title" v-text="item.title"></span><span class="date" v-text="item.date"></span>
            </li>
        </ul>
    </vue-seamless-scroll>
</template>
<style lang="scss" scoped>
    .seamless-warp {
        height: 229px;
        overflow: hidden;
    }
</style>
<script>
    export default {
        data () {
            return {
                listData: [{
                   'title': '无缝滚动第一行无缝滚动第一行',
                   'date': '2017-12-16'
                 }, {
                    'title': '无缝滚动第二行无缝滚动第二行',
                    'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第三行无缝滚动第三行',
                     'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第四行无缝滚动第四行',
                     'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第五行无缝滚动第五行',
                     'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第六行无缝滚动第六行',
                     'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第七行无缝滚动第七行',
                     'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第八行无缝滚动第八行',
                     'date': '2017-12-16'
                 }, {
                     'title': '无缝滚动第九行无缝滚动第九行',
                     'date': '2017-12-16'
                 }]
                }
            },
            computed: {
                classOption () {
                    return {
                            direction: 0
                        }
                }
             }
       }
</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用以下的方法实现vue列表滚动悬浮停止加点击功能: 1.使用CSS的position: fixed属性将列表固定在页面上方,并添加一个z-index属性确保其在其他元素之上。 2.使用Vue的scroll事件监听列表滚动位置。当列表滚动到一定位置时,将其position属性设置为absolute,这样它就可以在页面上停止滚动。 3.使用Vue的@click事件将列表置顶。当用户点击列表时,将其scrollTop属性设置为0,这样它就会滚动回到顶部。 下面是一个示例代码: ```html <template> <div> <div class="list" :style="{ position: position }" @scroll="handleScroll"> <ul> <li v-for="item in list" :key="item.id">{{ item.text }}</li> </ul> </div> <button class="btn" @click="scrollToTop" v-if="showBtn">置顶</button> </div> </template> <script> export default { data() { return { list: [], // 列表数据 position: 'fixed', // 列表位置 showBtn: false // 是否显示置顶按钮 }; }, mounted() { // 加载列表数据 this.loadList(); }, methods: { loadList() { // 加载列表数据 }, handleScroll() { // 监听滚动事件 const scrollTop = this.$refs.list.scrollTop; if (scrollTop > 100) { this.position = 'absolute'; this.showBtn = true; } else { this.position = 'fixed'; this.showBtn = false; } }, scrollToTop() { // 点击置顶按钮 this.$refs.list.scrollTop = 0; } } }; </script> <style scoped> .list { width: 300px; height: 200px; overflow-y: auto; position: fixed; top: 0; left: 0; z-index: 999; } .btn { position: fixed; bottom: 10px; right: 10px; } </style> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值