当前位置:首页 > 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实现淡入淡出效果

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;
}

实现图片画廊预览

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

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>

响应式图片切换方案

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

js怎么实现图片切换

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
分享给朋友:

相关文章

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…

js验证码的实现

js验证码的实现

验证码的基本实现原理 验证码(CAPTCHA)的核心目标是区分人类用户和自动化程序。JavaScript可用于生成或验证客户端验证码,但需注意纯前端验证可能被绕过,通常需结合后端验证。 纯前端验证码…

js图片轮播的实现

js图片轮播的实现

基础图片轮播实现 使用HTML、CSS和JavaScript实现一个简单的图片轮播效果。HTML部分定义轮播容器和图片,CSS负责样式和过渡效果,JavaScript处理逻辑。 <div cl…

Vue实现图片 放大

Vue实现图片 放大

Vue实现图片放大功能 使用v-viewer插件 安装v-viewer插件: npm install v-viewer 在main.js中引入并配置: import Viewer from 'v-…

js实现复选框

js实现复选框

实现复选框的基本方法 使用HTML的<input type="checkbox">元素创建复选框,并通过JavaScript监听其状态变化。 <input type="checkb…

js实现文件夹

js实现文件夹

使用JavaScript创建文件夹 在浏览器端的JavaScript中无法直接操作文件系统创建文件夹,这是出于安全考虑。但在Node.js环境中可以通过文件系统模块(fs)实现。 Node.js中使…