首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js点击小图切换大图源码

要实现点击小图切换大图的功能,可以使用JavaScript来处理点击事件,并动态更改大图的src属性。以下是一个简单的示例代码:

HTML部分

代码语言:txt
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Image Switcher</title>
</head>
<body>
    <div>
        <img src="small-image1.jpg" alt="Small Image 1" class="small-image" data-large-src="large-image1.jpg">
        <img src="small-image2.jpg" alt="Small Image 2" class="small-image" data-large-src="large-image2.jpg">
        <img src="small-image3.jpg" alt="Small Image 3" class="small-image" data-large-src="large-image3.jpg">
    </div>
    <div>
        <img id="large-image" src="large-image1.jpg" alt="Large Image">
    </div>

    <script src="script.js"></script>
</body>
</html>

JavaScript部分(script.js)

代码语言:txt
复制
document.addEventListener('DOMContentLoaded', function() {
    const smallImages = document.querySelectorAll('.small-image');
    const largeImage = document.getElementById('large-image');

    smallImages.forEach(smallImage => {
        smallImage.addEventListener('click', function() {
            const largeSrc = this.getAttribute('data-large-src');
            largeImage.src = largeSrc;
        });
    });
});

解释

  1. HTML部分:
    • 创建多个小图,每个小图都有一个data-large-src属性,用于存储对应的大图路径。
    • 创建一个大图元素,初始显示第一张大图。
  • JavaScript部分:
    • 使用DOMContentLoaded事件确保DOM完全加载后再执行脚本。
    • 获取所有带有small-image类的小图元素。
    • 为每个小图添加点击事件监听器,当点击小图时,获取其data-large-src属性的值,并将其设置为大图的src属性,从而实现切换效果。

优势与应用场景

  • 优势:
    • 简单直观,易于实现和维护。
    • 用户交互友好,提升用户体验。
    • 可以灵活扩展,支持任意数量的小图和大图组合。
  • 应用场景:
    • 图片库或相册展示。
    • 电商网站的产品缩略图预览。
    • 新闻网站的图片新闻切换。

可能遇到的问题及解决方法

  1. 图片加载延迟:
    • 使用图片预加载技术,提前加载所有可能显示的大图。
    • 使用图片预加载技术,提前加载所有可能显示的大图。
  • 点击事件未触发:
    • 确保所有元素和事件监听器正确绑定,检查是否有CSS样式阻止了事件的触发(如pointer-events: none;)。
  • 大图路径错误:
    • 检查data-large-src属性的值是否正确,确保路径相对于当前页面有效。

通过以上方法,可以有效实现点击小图切换大图的功能,并解决常见的问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • vue图片加载(默认图、小图、加载图、大图、加载失败图)

    为了解决上述问题,如果小图可以加载,则直接使用小图,如果小图不能加载,则先使用加载中的图片去渲染,当原图加载成功以后,渲染上对应的原图,如果当原图也渲染失败(比如服务器响应客户端最大时间为30秒,网速过慢导致该时间内未完成...", // 小图加载失败,会先使用loading图片占位,避免页面卡顿,等待大图加载完成使用大图 small: "https://xixixi.net.cn/resources/images...https://xixixi.net.cn/resources/images/error.png", }, { text: "使用加载失败图片", // 小图和大图地址都加载失败...,大图可以使用时返回大图地址 } } bigImage.onerror = function() {..., bigImg}) // 2.根据图片信息进行处理 .then((res) => { el.setAttribute('src', res) // 6.使用小图或者大图渲染界面

    4K00

    小程序点击轮播图跳转到tab导航界面

    需求:小程序点击轮播图跳转到tab导航界面,效果如下所示 ?...点击轮播图的图片,跳转到我的界面上 先实现以下的代码,在以下的基础上,开始实现需求 微信小程序底部导航栏 https://www.jianshu.com/p/89a63dc99839 微信小程序轮播图...https://www.jianshu.com/p/bc3261557031 wxml部分 一切准备好之后,在wxml文件里面,我们要使用 bindtap在图片上绑定一个事件,在js里面写事件函数的具体操作...-- 绑定一个事件,在js里面写事件函数的具体操作 --> js部分 写一个click_swiper函数,函数执行的是,当点击图片上的事件的时候...click_swiper:function(e){ // 当点击图片上的事件的时候,触发这个函数 wx.switchTab({ // 因为是跳转到tab界面,所以使用switchTab

    1.5K41

    最新综述| A Survey on Graph Condensation 如何有效将大图压缩为小图?

    大规模图的分析对计算效率和资源需求提出了重大挑战。最近,图缩合(Graph Condensation)作为一种解决方案出现,以解决图数据量不断增加所带来的挑战。...GC的动机是将大图的规模缩小到较小的图,同时为下游任务保留必要的信息。...由于图数据集的丰富性,图缩合算法的研究涉及单图和多图的场景。...图指导 该类型方法主要是以原始数据集为导向,提取得到类似属性的缩合图,其中对于图属性的定义和相似性评估是该类方法的关键。根据图信息所属域的不同,我们将该类目标进一步分为图数据的谱域和空间域方法。...目标比较 三种类型的目标,即图指导、模型指导和混合方法,对应其优点和缺点的讨论如下: 图指导:为了产生“相似”的缩合图,图指导目标侧重于保留原始图的属性。这适用于需要保留原始图中的模式的应用程序。

    64000

    微信小程序图片放大预览效果的实现,轮播图点击放大预览

    近期很多刚学习小程序的同学,想做哪种图片点击放大,然后可以左右滑动预览的效果。我也特意去研究下,发现直接用微信程序自己的api就可以很方便的实现。今天就来教大家如何实现小程序图片点击放大的效果。...1-3,把image.js的完整代码贴出来。...然后定义一个方法,在点击图片时实现图片放大预览的效果。 其实代码就这么多,我们就可以轻松的实现小程序图片的点击放大效果了。 是不是很简单。...二,轮播图点击放大预览 其实我们的轮播图也是可以实现点击放大的。 2-1,效果图 首先是轮播图如下 ? 可以看出我们有三张轮播图,点击放大后的效果 ? ?...,外加一个点击事件 2-3,js代码的实现 其实和我们上面多图片实现的代码一样 Page({ data: { imgList: [ "https://ss0.bdstatic.com

    5.6K30

    小程序商店更新:移动版新增轮播图,详情页大更新

    贴士:在知晓程序(微信号 zxcx0101)后台,点击下方「程序商店」菜单栏按钮,即可进入小程序商店移动版。 新增轮播图、新锐榜和口碑榜 以前,小程序商店只能使用分类查看所有小程序。...继昨天的更新上线模糊搜索后,移动版小程序商店终于有了桌面端的轮播图。你可以在轮播图中,看到我们精选的优秀小程序了。 同时,新锐榜和口碑榜这次也出现在了移动版小程序商店。...小程序详情页大更新 现在,小程序详情页变得更加简洁、清晰了。 你可以在详情页中了解相应小程序的截屏和介绍,还能看到其他人如何评价这款小程序。...同时,在小程序详情页的首屏中,你可以点击「尝鲜」按钮直接复制相应小程序名称,不需要再拖动到底部点击「一键复制」了(当然,「一键复制」按钮依然为你保留)。...目前,点击「尝鲜」或「一键复制」的结果将会是正确的。 此次移动端更新内容就是这些了。不知道大家是否喜欢这些新功能呢? 如果对商店还有什么意见或者建议,抑或是反馈 bug,都可以在留言区告诉我们。

    1.9K30

    这家帮迅雷、小咖秀鉴别“小黄图”的公司要做视频大生意

    于是图普科技想到让它理解“小黄图”。 图普是一家图像识别云服务公司,接入它的API,上传图片,服务器就能以一定的准确性解读图片。...图片来自图普官网截图 鉴别小黄图听起来像是个苦力活,但与其它类型的图像一样,用的也是深度学习技术。...图普表示,与国内主流的直播和短视频平台,如17、风云直播、小咖秀等都有合作,接入的数据多,覆盖全面。 ? 李明强 / 图片来自图普科技 做到这一点的前提是找到方向和需求。...后来由于快播事件,他们发现内容审核对很多社交及云平台都是刚需,才做起了鉴别小黄图。 不过鉴黄并不是图普的目标。也许是继承了腾讯的基因,李明强给图普的定位是给视频时代建立连接。...看来,鉴别小黄图还只是开始。

    1.4K70
    领券