商城放大镜以及图片切换功能

2024-01-14 18:30

本文主要是介绍商城放大镜以及图片切换功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、效果图

1.开始效果图

2.放大镜效果图

 3.图片切换功能(鼠标移入下方相应图片,上面以及放大图片相继改变)

 二、HTMl代码

        <div class="box1"><div id="smallbox" class="small"><img id="smallImg" src="./img/da1.jpg"/><div id="mask" class="mask"></div></div><div class="bottom"><div id="bottomImg1"><img src="./img/xiao1.webp" alt=""></div><div id="bottomImg2"><img src="./img/xiao2.webp" alt=""></div><div id="bottomImg3"><img src="./img/xiao3.webp" alt=""></div></div></div><div id="bigbox" class="big"><img id="bigImg" src="./img/da1.jpg"/></div>

三、CSS代码

			*{margin: 0px;padding:  0px;}#smallbox{width: 300px;height: 300px;position: relative;border: 1px solid gray;}#smallbox img{width: 100%;height: 100%;}.mask{width: 100px;height: 100px;background-color: black;opacity: 0.3;position: absolute;top: 0;left: 0;display: none;cursor: move;}.big{width: 400px;height: 400px;overflow: hidden;position: relative;border: 1px solid gray;margin-left: 20px;display: none;z-index: 10;}.big img{width: 800px;height: 800px;position: absolute;top: 0;left: 0;}.small,.big{float: left;}.bottom{width: 300px;float: left;}.bottom div {width: 90px;height: 90px;background-color: blue ;margin-right: 10px;float: left;}.bottom img{width: 100%;height: 100%;}.box1{width: 300px;height: 300px;float: left;}

四、JavaScript代码

// 获取各个元素var smallBox = document.getElementById("smallbox");var mask = document.getElementById("mask");var bigbox = document.getElementById("bigbox");var bigImg = document.getElementById("bigImg");var smallImg = document.getElementById("smallImg")var bottomImg1 =document.getElementById("bottomImg1");var bottomImg2 =document.getElementById("bottomImg2");var bottomImg3 =document.getElementById("bottomImg3");//移入鼠标,显示图片和放大图片改为的模块一的图片bottomImg1.onmouseover = function(){smallImg.src = "./img/da1.jpg";bigImg.src = "./img/da1.jpg"}//移入鼠标,显示图片和放大图片改为的模块一的图片bottomImg2.onmouseover = function(){smallImg.src = "./img/da2.jpg";bigImg.src = "./img/da2.jpg"}//移入鼠标,显示图片和放大图片改为的模块一的图片bottomImg3.onmouseover = function(){smallImg.src = "./img/da3.jpg";bigImg.src = "./img/da3.jpg"}// 移入鼠标,遮罩层和放大图片显示smallBox.onmouseover = function(){mask.style.display = "block";bigbox.style.display = "block";}// 移出鼠标,遮罩层和放大图片隐藏smallBox.onmouseout = function(){mask.style.display = "none";bigbox.style.display = "none";}// 进行放大镜设置smallBox.onmousemove = function(e){var x = e.clientX - smallBox.offsetLeft -mask.offsetWidth/2;var y = e.clientY - smallBox.offsetTop -mask.offsetHeight/2;if (x<0){x=0;}if(x>(smallBox.offsetWidth - mask.offsetWidth)){x=smallBox.offsetWidth - mask.offsetWidth;}if(y<0){y=0;}if(y>(smallBox.offsetHeight - mask.offsetHeight)){y=smallBox.offsetHeight - mask.offsetHeight;}mask.style.left = x +'px';mask.style.top = y +'px';bigImg.style.left = -2*x+'px';bigImg.style.top = -2*y+'px';}

提示:

相关图片信息请自行修改

这篇关于商城放大镜以及图片切换功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/606109

相关文章

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

Java实现预览与打印功能详解

《Java实现预览与打印功能详解》在Java中,打印功能主要依赖java.awt.print包,该包提供了与打印相关的一些关键类,比如PrinterJob和PageFormat,它们构成... 目录Java 打印系统概述打印预览与设置使用 PageFormat 和 PrinterJob 类设置页面格式与纸张

MySQL 8 中的一个强大功能 JSON_TABLE示例详解

《MySQL8中的一个强大功能JSON_TABLE示例详解》JSON_TABLE是MySQL8中引入的一个强大功能,它允许用户将JSON数据转换为关系表格式,从而可以更方便地在SQL查询中处理J... 目录基本语法示例示例查询解释应用场景不适用场景1. ‌jsON 数据结构过于复杂或动态变化‌2. ‌性能要

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

基于Python实现一个图片拆分工具

《基于Python实现一个图片拆分工具》这篇文章主要为大家详细介绍了如何基于Python实现一个图片拆分工具,可以根据需要的行数和列数进行拆分,感兴趣的小伙伴可以跟随小编一起学习一下... 简单介绍先自己选择输入的图片,默认是输出到项目文件夹中,可以自己选择其他的文件夹,选择需要拆分的行数和列数,可以通过

IDEA中新建/切换Git分支的实现步骤

《IDEA中新建/切换Git分支的实现步骤》本文主要介绍了IDEA中新建/切换Git分支的实现步骤,通过菜单创建新分支并选择是否切换,创建后在Git详情或右键Checkout中切换分支,感兴趣的可以了... 前提:项目已被Git托管1、点击上方栏Git->NewBrancjsh...2、输入新的分支的

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

Golang如何用gorm实现分页的功能

《Golang如何用gorm实现分页的功能》:本文主要介绍Golang如何用gorm实现分页的功能方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景go库下载初始化数据【1】建表【2】插入数据【3】查看数据4、代码示例【1】gorm结构体定义【2】分页结构体

利用Python脚本实现批量将图片转换为WebP格式

《利用Python脚本实现批量将图片转换为WebP格式》Python语言的简洁语法和库支持使其成为图像处理的理想选择,本文将介绍如何利用Python实现批量将图片转换为WebP格式的脚本,WebP作为... 目录简介1. python在图像处理中的应用2. WebP格式的原理和优势2.1 WebP格式与传统