当前位置:首页 > JavaScript

js怎么实现图片切换

2026-01-30 17:46:49JavaScript

使用原生JavaScript实现图片切换

通过设置定时器或事件触发切换<img>元素的src属性

let currentIndex = 0;
const images = ['img1.jpg', 'img2.jpg', 'img3.jpg'];
const imgElement = document.getElementById('myImage');

function changeImage() {
  currentIndex = (currentIndex + 1) % images.length;
  imgElement.src = images[currentIndex];
}

// 自动轮播
setInterval(changeImage, 3000);

// 点击切换
document.getElementById('nextBtn').addEventListener('click', changeImage);

使用CSS过渡效果增强切换

结合CSS实现淡入淡出效果

js怎么实现图片切换

const slides = document.querySelectorAll('.slide');
let currentSlide = 0;

function nextSlide() {
  slides[currentSlide].classList.remove('active');
  currentSlide = (currentSlide + 1) % slides.length;
  slides[currentSlide].classList.add('active');
}

对应CSS样式:

.slide {
  opacity: 0;
  transition: opacity 1s;
  position: absolute;
}
.slide.active {
  opacity: 1;
}

实现图片画廊预览

创建缩略图点击切换主图功能

js怎么实现图片切换

const thumbnails = document.querySelectorAll('.thumbnail');
const mainImage = document.getElementById('mainImage');

thumbnails.forEach(thumb => {
  thumb.addEventListener('click', function() {
    mainImage.src = this.dataset.fullsize;
    mainImage.alt = this.alt;
  });
});

HTML结构示例:

<img id="mainImage" src="default.jpg">
<div class="gallery">
  <img class="thumbnail" src="thumb1.jpg" data-fullsize="full1.jpg">
  <img class="thumbnail" src="thumb2.jpg" data-fullsize="full2.jpg">
</div>

响应式图片切换方案

根据屏幕尺寸加载不同图片

function responsiveImageSwitch() {
  const screenWidth = window.innerWidth;
  const img = document.getElementById('responsiveImg');

  if(screenWidth >= 1024) {
    img.src = 'large.jpg';
  } else if(screenWidth >= 768) {
    img.src = 'medium.jpg';
  } else {
    img.src = 'small.jpg';
  }
}

window.addEventListener('resize', responsiveImageSwitch);
window.addEventListener('load', responsiveImageSwitch);

标签: 图片js
分享给朋友:

相关文章

vue实现图片轮播

vue实现图片轮播

Vue 实现图片轮播的方法 使用第三方库(推荐) 安装 vue-awesome-swiper 库,这是基于 Swiper 的 Vue 封装: npm install swiper vue-a…

vue实现拖动图片验证

vue实现拖动图片验证

Vue 实现拖动图片验证功能 核心思路 拖动图片验证通常需要用户将图片拖动到指定区域或按正确顺序排列。实现时需要处理拖拽事件、验证逻辑和视觉反馈。 实现步骤 1. 基础组件结构 <templ…

js实现分页

js实现分页

分页的基本实现思路 在JavaScript中实现分页功能通常需要结合前端和后端逻辑。前端负责渲染分页控件和处理用户交互,后端负责提供分页数据。 前端分页实现 纯前端分页适用于数据量较小的情况,可以直…

vue实现图片循环

vue实现图片循环

实现图片循环展示 在Vue中实现图片循环展示可以通过v-for指令结合数组数据完成。以下是具体实现方式: 基础循环展示 准备图片数据数组,使用v-for渲染图片列表: <template&g…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…