当前位置:首页 > JavaScript

js实现图片切换

2026-01-30 09:27:54JavaScript

使用JavaScript实现图片切换

图片切换可以通过多种方式实现,以下介绍几种常见的方法。

基础DOM操作切换图片

通过修改img标签的src属性实现图片切换。准备一个图片数组和索引变量:

js实现图片切换

const images = ['image1.jpg', 'image2.jpg', 'image3.jpg'];
let currentIndex = 0;
const imgElement = document.getElementById('myImage');

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

// 定时切换
setInterval(changeImage, 2000);

使用CSS类切换

通过切换包含不同背景图片的CSS类实现:

const imageContainer = document.getElementById('image-container');
const classes = ['bg-image1', 'bg-image2', 'bg-image3'];
let currentClassIndex = 0;

function toggleImage() {
  imageContainer.classList.remove(classes[currentClassIndex]);
  currentClassIndex = (currentClassIndex + 1) % classes.length;
  imageContainer.classList.add(classes[currentClassIndex]);
}

淡入淡出效果

实现平滑过渡效果:

js实现图片切换

function fadeSwitch() {
  const img = document.getElementById('slideshow');
  img.style.opacity = 0;

  setTimeout(() => {
    img.src = images[currentIndex];
    currentIndex = (currentIndex + 1) % images.length;
    img.style.opacity = 1;
  }, 500);
}

setInterval(fadeSwitch, 2500);

响应式图片切换

根据屏幕尺寸切换不同图片:

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

  if(screenWidth < 768) {
    img.src = 'mobile.jpg';
  } else {
    img.src = 'desktop.jpg';
  }
}

window.addEventListener('resize', responsiveImageSwitch);

使用事件驱动的切换

通过按钮控制图片切换:

const prevBtn = document.getElementById('prev');
const nextBtn = document.getElementById('next');

prevBtn.addEventListener('click', () => {
  currentIndex = (currentIndex - 1 + images.length) % images.length;
  updateImage();
});

nextBtn.addEventListener('click', () => {
  currentIndex = (currentIndex + 1) % images.length;
  updateImage();
});

function updateImage() {
  document.getElementById('gallery').src = images[currentIndex];
}

以上方法可以根据具体需求组合使用,创建更复杂的图片切换效果。

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

相关文章

css3手工制作图片

css3手工制作图片

使用CSS3手工制作图片 CSS3可以通过各种属性如box-shadow、border-radius、gradient等来手工绘制简单的图形或图片效果。以下是几种常见的方法: 绘制圆形 通过bord…

vue实现组件循环图片

vue实现组件循环图片

Vue 实现组件循环图片的方法 在 Vue 中实现组件循环图片通常可以通过 v-for 指令结合动态数据绑定完成。以下是几种常见的实现方式: 使用静态图片路径数组 假设有一组本地图片路径,可以通过数…

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas i…

js实现打印

js实现打印

使用window.print()方法实现打印 在JavaScript中,可以通过调用window.print()方法直接触发浏览器的打印功能。这会打开系统的打印对话框,用户可以选择打印机和设置打印选项…

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaSc…