可以通过监听鼠标滑过事件来实现轮播图的切换。具体步骤如下:

1. 在 template 中添加鼠标滑过事件监听:

<template>
  <div>
    <ul>
      <li v-for="(item, index) in list" :key="index" @mouseover="changeSlide(index)">
        <img :src="item.imgUrl" alt="">
        <p>{{ item.title }}</p>
      </li>
    </ul>
  </div>
</template>

2. 在 methods 中添加 changeSlide 方法来切换轮播图:

methods: {
  changeSlide(index) {
    this.currentSlide = index;
    if (index % 3 === 0) {
      this.slides = this.slides1;
    } else if (index % 3 === 1) {
      this.slides = this.slides2;
    } else {
      this.slides = this.slides3;
    }
  }
}

3. 在 data 中定义存储轮播图数据的变量,并初始化:

data() {
  return {
    list: [
      { imgUrl: 'https://xxx.xxx.jpg', title: 'title1' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'title2' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'title3' },
      // ...
    ],
    currentSlide: 0,
    slides1: [
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide1-1' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide1-2' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide1-3' },
      // ...
    ],
    slides2: [
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide2-1' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide2-2' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide2-3' },
      // ...
    ],
    slides3: [
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide3-1' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide3-2' },
      { imgUrl: 'https://xxx.xxx.jpg', title: 'slide3-3' },
      // ...
    ],
    slides: []
  }
},

4. 在 mounted 钩子函数中初始化轮播图数据:

mounted() {
  this.slides = this.slides1;
},

这样就可以实现当鼠标滑过 li 时轮播图跟着换一组的效果了。

Uniapp 鼠标滑过 LI 切换轮播图教程

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

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