利用js来选择图片

当鼠标悬停在小图片上时,代码会将小图片的src赋值给大图片,从而在大图片区域展示相应的放大图像。这个效果主要依赖于JavaScript的鼠标移入移出事件处理和HTML结构。
摘要由CSDN通过智能技术生成

功能:

当鼠标经过一张小的图片的时候,上面展现出对应的大图片 ,效果如下。

 

 用到的知识点比较少,主要是鼠标经过事件,经过哪一张图片,将对应图片的src赋值给上面大盒子里面图片的src 地址值

上代码:

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

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

        .small>img {
            width: 100px;
            height: 100px;
        }
    </style>
</head>

<body>
    <div>
        <img src="./img/QQ图片20230415084047.jpg" alt="" class="big">

    </div>
    <div class="small">
        <img src="./img/QQ图片20230415084047.jpg" alt="">
        <img src="./img/QQ图片20230415084115.jpg" alt="">
        <img src="./img/QQ图片20230415084119.jpg" alt="">
        <img src="./img/QQ图片20230415084123.jpg" alt="">
        <img src="./img/QQ图片20230415084127.jpg" alt="">
        <img src="./img/QQ图片20230415084132.jpg" alt="">
    </div>
    <script>
        //逻辑:本质是,放到那个图片上面,就是将小图的src赋值给大图的src
        //鼠标的移入移除事件
        let imgs = document.querySelectorAll('img');
        for (let i = 0; i < imgs.length; i++) {
            imgs[i].onmouseover = function () {
                //把小图的src赋值给大图的src
                imgs[0].src = this.src;
            }
        }
    </script>
</body>

</html>

快去试试吧🦄

如果想要图片可以留言,后台踢我呦😉~~~

以下是利用JavaScript实现鼠标控制图片放大和缩小的示例代码: ```html <!-- HTML结构 --> <div> <img id="img" src="image.jpg" alt="image"> </div> ``` ```css /* CSS样式 */ div { width: 500px; height: 500px; overflow: hidden; } img { width: 100%; height: 100%; transition: all 0.2s ease; } ``` ```javascript // JavaScript代码 const img = document.getElementById('img'); let scale = 1; // 鼠标滚轮事件 document.addEventListener('wheel', (e) => { e.preventDefault(); // 阻止页面滚动 let delta = Math.sign(e.deltaY); // 获取鼠标滚轮滚动方向 scale += delta * 0.1; // 改变缩放比例 scale = Math.max(0.1, Math.min(3, scale)); // 缩放比例限制在0.1~3之间 img.style.transform = `scale(${scale})`; // 应用缩放效果 }); // 鼠标拖拽事件 let isDragging = false; let startX, startY; let translateX = 0, translateY = 0; img.addEventListener('mousedown', (e) => { e.preventDefault(); isDragging = true; startX = e.clientX; startY = e.clientY; }); document.addEventListener('mousemove', (e) => { e.preventDefault(); if (isDragging) { let deltaX = e.clientX - startX; let deltaY = e.clientY - startY; translateX += deltaX; translateY += deltaY; img.style.transform = `scale(${scale}) translate(${translateX}px, ${translateY}px)`; startX = e.clientX; startY = e.clientY; } }); document.addEventListener('mouseup', () => { isDragging = false; }); ``` 代码解释: 1. HTML结构中包含一个容器div和一个图片img,容器设置为固定大小并隐藏超出部分,图片设置为100%宽高并添加过渡效果。 2. CSS样式中设置了容器的样式和图片的样式,并且为img添加了过渡效果。 3. JavaScript代码中定义了一个img元素和一个缩放比例scale,默认为1。 4. 监听鼠标滚轮事件,获取滚动方向,改变缩放比例,限制在0.1~3之间,然后应用缩放效果。 5. 监听鼠标拖拽事件,获取鼠标拖拽距离,根据鼠标拖拽距离改变图片的translateX和translateY属性值,应用缩放和平移效果。 6. 代码中使用了ES6的语法,如模板字符串和箭头函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值