js实现鼠标切换图片(无定时器)

JS实现鼠标切换图片(无定时器)的攻略如下:

步骤一:搭建HTML结构

首先,我们需要搭建一个HTML结构,用于展示图片和显示鼠标切换效果。具体可以参考下面的代码示例:

<div class="img-wrapper">
  <img src="https://picsum.photos/id/1/200/300" alt="image1">
  <img src="https://picsum.photos/id/2/200/300" alt="image2">
  <img src="https://picsum.photos/id/3/200/300" alt="image3">
  <img src="https://picsum.photos/id/4/200/300" alt="image4">
</div>
<div class="dots">
  <span class="dot active"></span>
  <span class="dot"></span>
  <span class="dot"></span>
  <span class="dot"></span>
</div>

其中,<div class="img-wrapper"> 是用来包含多张图片的容器,<div class="dots"> 是用来展示鼠标切换效果的点点容器,目的是让用户知道当前正在查看的是哪张图片。

步骤二:编写CSS样式

接下来,我们需要编写CSS样式,以便美化页面和实现鼠标切换效果。具体可以参考下面的代码示例:

.img-wrapper {
  position: relative;
  height: 300px;
}
.img-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.img-wrapper img.active {
  opacity: 1;
}
.dots {
  display: flex;
  justify-content: center;
  margin-top: 10px;
}
.dot {
  height: 8px;
  width: 8px;
  border-radius: 50%;
  background-color: #ddd;
  margin: 0 5px;
  cursor: pointer;
}
.dot.active {
  background-color: #333;
}

其中,.img-wrapper 的布局使用了 position: relative;position: absolute; 来实现图片的重叠效果。opacity 属性用于控制图片的透明度,.img-wrapper img.active 表示当前显示的图片。.dots 使用了 display: flex;justify-content: center; 属性来让点点居中展示,.dot.active 表示当前展示的点点。

步骤三:编写JavaScript

最后,我们需要编写JavaScript代码来实现鼠标切换图片的效果。我们可以通过监听 .dot 元素的点击事件来实现,具体可以参考下面的代码示例:

const dots = document.querySelectorAll('.dot');
const images = document.querySelectorAll('.img-wrapper img');

// 监听点点的点击事件
dots.forEach((dot, index) => {
  dot.addEventListener('click', () => {
    // 移除之前的 active 类名
    dots.forEach((dot) => dot.classList.remove('active'));
    images.forEach((image) => image.classList.remove('active'));

    // 给当前点击的点点和图片添加 active 类名
    dot.classList.add('active');
    images[index].classList.add('active');
  })
})

其中,document.querySelectorAll() 方法用于获取所有的 .dot.img-wrapper img 元素,然后我们使用 .forEach() 方法遍历所有的 .dot 元素,给每个元素添加点击事件。当点击某个点点时,我们首先需要移除之前所有元素上的 active 类名,然后给当前点击的点点和对应的图片添加 active 类名。

示例说明

示例1:动态切换壁纸

示例2:切换多组图片(滑动切换)

以上就是JS实现鼠标切换图片(无定时器)的完整攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js实现鼠标切换图片(无定时器) - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • javascript 小时:分钟的正则表达式

    首先,为了匹配符合“小时:分钟”格式的字符串,我们需要使用正则表达式。下面是一个简单的正则表达式: /^\d{1,2}:\d{1,2}$/ 这个正则表达式使用了^和$锚定符来确保整个字符串都与模式匹配。模式由两个数字组成,由一个冒号分隔。d{1, 2}表示可以匹配1-2位的数字。因此,模式可以匹配 1:30、10:45、21:00 等。 如果你需要限制小时必…

    JavaScript 2023年5月27日
    00
  • JavaScript中的数据类型介绍

    当我们使用JavaScript进行编程时,数据类型是我们需要了解的基础之一。JavaScript中的数据类型包括基本数据类型和复杂数据类型。 基本数据类型 JavaScript中的基本数据类型有以下五种: 1.数字类型(Number) 表示数字,举个例子: let num = 3; 2.字符串类型(String) 表示字符串,举个例子: let str = …

    JavaScript 2023年5月18日
    00
  • js实现简单的倒计时

    下面是关于“JS实现简单的倒计时”的详细攻略。 基本思路 倒计时的原理很简单,就是获取未来的某个时间点与当前时间点的差值,然后根据差值计算出剩余的时间,最后通过 DOM 操作将剩余的时间显示在网页上。 实现步骤 1. 获取未来时间点 倒计时的第一步就是要获取未来的某个时间点,可以在 HTML 中用一个 input 标签来输入一个日期时间字符串,然后使用 ne…

    JavaScript 2023年5月27日
    00
  • JavaScript实现动态删除列表框值的方法

    当我们使用HTML标签的select元素创建一个列表框时,很可能需要实现从列表框中删除某些选项的功能。在JavaScript中,可以通过以下几个步骤来实现动态删除列表框值: 创建HTML标记 首先,在HTML标记中,需要声明一个select元素,并在其中添加若干option元素。例如,可以使用以下代码创建一个包含3个选项的列表框: <select id…

    JavaScript 2023年6月11日
    00
  • 分享9个最好用的JavaScript开发工具和代码编辑器

    以下是“分享9个最好用的JavaScript开发工具和代码编辑器”的完整攻略。 1. 介绍 对于 JavaScript 开发者来说,选择一款编程工具和代码编辑器非常重要,这可以提高我们的生产力,提升开发效率和质量。以下是 9 款我们认为是最好用的 JavaScript 开发工具和代码编辑器。 2. Visual Studio Code Visual Stud…

    JavaScript 2023年5月27日
    00
  • JS数组转字符串实现方法解析

    下面是“JS数组转字符串实现方法解析”的完整攻略。 前言 在实际的开发中,我们经常需要将 JavaScript 数组转换为字符串。这个过程并不复杂,但是我们需要注意一些细节,否则可能会出现不符合预期的结果。 本文将介绍多种将 JavaScript 数组转换为字符串的方法,其中涉及到 join() 方法、toString() 方法、JSON.stringify…

    JavaScript 2023年5月28日
    00
  • 微信小程序 倒计时组件实现代码

    下面就来分享微信小程序中倒计时组件的实现过程吧。 准备工作 在开始具体讲解之前,需要对微信小程序的基础知识有一定的了解,包括:- 小程序的目录结构- WXML、WXSS、JS、JSON 文件的作用- 小程序的基础组件和事件绑定等操作 倒计时组件实现步骤 1. 创建小程序项目 首先,在微信开发者工具中创建一个基础的小程序项目。 2. 创建倒计时组件 在项目中创…

    JavaScript 2023年6月11日
    00
  • js document.getElementsByClassName的使用介绍与自定义函数

    让我们来详细讲解一下 “document.getElementsByClassName” 的使用介绍与自定义函数的完整攻略。 1. document.getElementsByClassName() 的介绍 document.getElementsByClassName() 是一个 JavaScript 函数,用于获取页面上所有指定 class 属性的元素。…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部