Implementing circular scrolling list function based on Vue

Implementing circular scrolling list function based on Vue

Note: You need to give the parent container a height and :data='Array' and overfolw:hidden; scrolling left and right requires giving the ul container an initial css width.
Let's first introduce the usage of this component:
1. Installation command:

cnpm install vue-seamless-scroll --save

2. Import as a global component in the main.js file

import scroll from 'vue-seamless-scroll'

Vue.use(scroll)

insert image description here

<vue-seamless-scroll :data="listData" class="seamless-warp" :class-option="defaultOption">
        <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>

CSS code:

<style lang="scss" scoped>
    .seamless-warp {
        height: 229px;
        overflow: hidden;
    }
</style>
<script>
    export default {
        data () {
            return {
                listData: [{
                   'title': 'Seamless scrolling first line Seamless scrolling first line',
                   'date': '2017-12-16'
                 }, {
                    'title': 'Seamless scrolling second line Seamless scrolling second line',
                    'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling third line Seamless scrolling third line',
                     'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling fourth line Seamless scrolling fourth line',
                     'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling fifth line Seamless scrolling fifth line',
                     'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling sixth line Seamless scrolling sixth line',
                     'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling seventh line Seamless scrolling seventh line',
                     'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling eighth line Seamless scrolling eighth line',
                     'date': '2017-12-16'
                 }, {
                     'title': 'Seamless scrolling ninth line Seamless scrolling ninth line',
                     'date': '2017-12-16'
                 }]
                }
            }
       }
</script>
computed: {
    defaultOption() {
      return {
        step: 0.6, // The larger the value, the faster the scrolling. hoverStop: true, // Whether to enable mouse hover stop
        direction: 1, // 0 down 1 up 2 left 3 right waitTime: 1000 // Single-step motion stop time (default 1000ms)
      }
    }
  }

The effect is as follows:

insert image description here

This is the end of this article about implementing a circular scrolling list function based on Vue. For more relevant Vue circular scrolling list content, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope everyone will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • How to use v-for loop to generate dynamic tags in Vue.js
  • 7 Ways to Write a Vue v-for Loop
  • Attributes in vue v-for loop object
  • Detailed explanation of the loop form item example in Vue
  • An example of implementing a simple infinite loop scrolling animation in Vue
  • This article will show you the event loop mechanism of vue.js

<<:  Illustration of the process of using FileZilla to connect to the FTP server

>>:  The difference between char and varchar in MYSQL

Recommend

The role of nextTick in Vue and several simple usage scenarios

Purpose Understand the role of nextTick and sever...

How to import Tomcat source code into idea

Table of contents 1. Download the tomcat code 2. ...

The practical process of login status management in the vuex project

Table of contents tool: Login scenario: practice:...

HTML elements (tags) and their usage

a : Indicates the starting or destination positio...

How to automatically number the results of MYSQL query data

Preface In fact, I have never encountered this ki...

Introduction to nesting rules of html tags

There are many XHTML tags: div, ul, li, dl, dt, d...

Vue3 gets the current routing address

Correct answer Using useRouter : // router path: ...

Detailed explanation of Js class construction and inheritance cases

The definition and inheritance of classes in JS a...

JS ES new feature of variable decoupling assignment

Table of contents 1. Decoupled assignment of arra...

JavaScript Canvas implements Tic-Tac-Toe game

This article shares the specific code of JavaScri...

Tips to prevent others from saving as my web page and copying my site

Nowadays, copying websites is very common on the I...

Box-shadow and drop-shadow to achieve irregular projection example code

When we want to add a shadow to a rectangle or ot...

Win10 + Ubuntu20.04 LTS dual system boot interface beautification

Effect display The built-in boot interface is too...

How to encapsulate axios in Vue

Table of contents 1. Installation 1. Introduction...