原生JS案例——相册大小图

本文介绍了一个HTML页面中,如何通过JavaScript实现小图片点击后动态替换大图片的功能,展示了前端开发中基本的DOM操作和事件监听。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        .big {
            width: 415px;
            height: 400px;
        }
        
        .small {
            width: 100px;
            height: 100px;
        }
    </style>
</head>

<body>
    <div>
        <img src="./img/ju.jpg" alt="" class="big" id="pic">
    </div>
    <div>
        <img class="small" src="./img/ju.jpg" alt="">
        <img class="small" src="./img/ying.jpg" alt="">
        <img class="small" src="./img/hu.jpg" alt="">
        <img class="small" src="./img/bu.jpg" alt="">
    </div>

    <script>
        // 先获取到小图元素数组,然后循环,点击某个小图,绑定点击事件,然后获取到该元素的src属性值,再获取大图的src属性,将小图的src属性值赋给大图的src属性值
        var simg = document.getElementsByClassName('small');
        // 只有一个big,不能使用类名来获取,这样获取不来属性
        // var bimg = document.getElementsByClassName('big');
        var bimg = document.getElementById('pic');
        // 因为小图有多个,所以要循环
        for (var i = 0; i < simg.length; i++) {
            simg[i].onclick = function() {
                var ssrc = this.attributes[1].value;
                bimg.attributes[0].value = ssrc;
                // console.log(ssrc);
            }
        }
        /*
		// 获取到所有的img元素
        // 图片元素.src=''
        let imgs = document.getElementsByTagName('img');
        // i从1开始,是只循环小图,
        for (let i = 1; i < imgs.length; i++) {
            // 鼠标经过小图时,大图src属性也随之改变成小图的src属性
            imgs[i].onmouseover = function() {
                imgs[0].src = this.src
            }
        }
		*/
    </script>

</body>

</html>

效果图:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值