一个图片局部放大镜

在JavaScript中实现商品图片的局部放大(放大镜) 对商品实现放大镜效果其实是拖拽事件的拓展。 在电商网站等购买东西的时候,我们经常会预览左侧商品展示图片,把鼠标放到原图,右侧就会有个大图显示出细节。本文将带领大家写一个这样简单的功能! 实现原理: 当鼠标移入某一图片内部时,图片上部会出现一个类似于扫描的框,这个框内的图片部分,会以方大形式展示在右边,如下图: 完整代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> 阅读详情

转自无忧脚本


<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<title>标本资料</title>
<script language="javascript">

var iDivHeight = 250; //放大显示区域宽度
var iDivWidth = 250;//放大显示区域高度
var iMultiple = 8; //放大倍数

//显示放大图,鼠标移动事件和鼠标点击事件都会调用本事件
//参数:src代表缩略图,sFileName放大图片名称
//原理:依据鼠标对应缩略图左上角(0,0)上的位置控制放大图左上角对应显示区域左上角(0,0)的位置
function show(src, sFileName)
{
 //判断鼠标事件产生时是否同时按下了
 if ((event.button == 1) && (event.ctrlKey == true))
  iMultiple -= 1;
 else
  if (event.button == 1)
   iMultiple += 1;
 if (iMultiple < 2) iMultiple = 2;
 
 if (iMultiple > 14) iMultiple = 14;
   
 var iPosX, iPosY; //放大图对应显示区域左上角的坐标
 var iMouseX = event.offsetX; //鼠标对应缩略图左上角的横坐标
 var iMouseY = event.offsetY; //鼠标对应缩略图左上角的纵坐标
 var iBigImgWidth = src.clientWidth * iMultiple;  //放大图宽度,是缩略图的宽度乘以放大倍数
 var iBigImgHeight = src.clientHeight * iMultiple; //放大图高度,是缩略图的高度乘以放大倍数
 
 if (iBigImgWidth <= iDivWidth)
 {
  iPosX = (iDivWidth - iBigImgWidth) / 2;
 }
 else
 {
  if ((iMouseX * iMultiple) <= (iDivWidth / 2))
  {
   iPosX = 0;
  }
  else
  {
   if (((src.clientWidth - iMouseX) * iMultiple) <= (iDivWidth / 2))
   {
    iPosX = -(iBigImgWidth - iDivWidth);
   }
   else
   {
    iPosX = -(iMouseX * iMultiple - iDivWidth / 2);
   }
  }
 }
 
 if (iBigImgHeight <= iDivHeight)
 {
  iPosY = (iDivHeight - iBigImgHeight) / 2;
 }
 else
 {
  if ((iMouseY * iMultiple) <= (iDivHeight / 2))
  {
   iPosY = 0;
  }
  else
  {
   if (((src.clientHeight - iMouseY) * iMultiple) <= (iDivHeight / 2))
   {
    iPosY = -(iBigImgHeight - iDivHeight);
   }
   else
   {
    iPosY = -(iMouseY * iMultiple - iDivHeight / 2);
   }
  }
 }
 div1.style.height = iDivHeight;
 div1.style.width = iDivWidth;
 if (div1.innerHTML == "")
 {
  div1.innerHTML = "<img id=BigImg style='position:relative'>";
  BigImg.src = "http://biomuseum.zsu.edu.cn/ASP/search/hexapod/big_pic/" + sFileName;
 }
 BigImg.width = iBigImgWidth;
 BigImg.height = iBigImgHeight;
 BigImg.style.top = iPosY;
 BigImg.style.left = iPosX;
}

</script>
</head>

<body>

<p></p>
<table cellspacing="0" cellpadding="1" width="727" align="center" border="0">
 <tr>
  <td align="middle">
  <table bordercolor="#000000" height="301" cellspacing="0" cellpadding="0" width="302" bgcolor="#deffde" border="1">
   <tr>
    <td align="middle">
    <marquee scrolldelay="120" width="80%"><font size="2">将鼠标移入标本图中,右方显示局部放大图;单击鼠标左键,可以增大放大倍数;鼠标单击时同时按Ctrl键则减小放大倍数。</font></marquee><br>
    <img onmousemove="show(this, 'B-000002.jpg')" onmousedown="show(this, 'B-000002.jpg')" id="imgSource" src="http://biomuseum.zsu.edu.cn/ASP/search/hexapod/small_pic/B-000002.jpg">
    </td>
   </tr>
  </table>
  </td>
  <td style="WIDTH: 15px" width="15"></td>
  <td align="middle">
  <table bordercolor="#000000" height="301" cellspacing="0" cellpadding="0" width="302" bgcolor="#deffde" border="1">
   <tr>
    <td align="middle"><a href="01/B-000002.jpg" target="_blank">打开原图</a>
    <div id="div1" style="OVERFLOW: hidden">
    </div>
    </td>
   </tr>
  </table>
  </td>
 </tr>
</table>
<p></p>

</body>

</html>

图片的局部放大(放大镜效果) 图片的局部放大(放大镜效果),基于jquery,使用非常简单,上手很容易。效果炫酷,与淘宝上图片放大的效果一样鼠标悬停,将图片局部放大显示 立即下载

相关推荐

android 图片局部放大效果(放大镜)

android 图片局部放大效果(放大镜)~~~~~~~~~~~

Ubuntu桌面放大随鼠标移动

Ubuntu屏幕尺寸

qq_34208520的博客 3482

Android图片局部放大镜

图片上某一点看不清楚,你不需要将整张图片都放大,只需要放大你想看到的部分,这个时候放大镜就派上用场了。

linux系统桌面放大镜,Ubuntu下怎样使用放大镜辅助功能

Ubuntu默认安装的辅助软件并没有包含放大镜功能,读屏软件Orca也没有,需要手动自行安装。具体步骤如下:1.CTRL+ALT+T启用命令行终端2.运行下面命令安装高级配置管理器:sudo apt-get install compizconfig-settings-manager3.运行下面命令(Compiz Config Settings Manager的缩写)打开高级配置窗口:ccsm4.找...

weixin_35801828的博客 2523

jQuery支持局部缩放图片放大镜插件.zip

代码简介:jQuery支持局部缩放图片放大镜插件是一款提供2种图片缩放模式,图片内部缩放和图片外部缩放,并且可以在图片上使用鼠标滚轮来对图片进行局部缩放。

安卓局部放大效果,放大镜实例

这是一个放大镜demo,作用就是点击的点的局部进行放大,显示在点击上方

XUbuntu22.04之解决桌面突然放大,屏幕跟着鼠标移动问题(一百九十)

本篇目的:在Xubuntu中,有时候不知道误触到哪些组合键?导致启用了Ubuntu的放大镜功能,导致整个屏幕跟着鼠标走动,本篇来解决这个问题。

Android系统攻城狮 4514

从零开始:用YOLOv8-Pose实现实时人体姿态检测(附完整代码)

本文提供了一份从零开始的完整实战指南,详细介绍了如何使用YOLOv8-Pose构建实时人体姿态检测系统。内容涵盖环境搭建、数据准备、模型训练与调优,以及高性能部署和进阶应用开发,并附有可直接运行的代码示例,帮助开发者快速掌握Pose Estimation技术并将其应用于实际项目。

h6i7j8的博客 621

图片中的放大镜怎么弄_2种方法,教你如何在PPT中局部放大图片

我们常看到在一些细节显示的图片上,会使用局部放大的效果来看展示,也可以说是放大镜效果。那么这种效果是怎么做出来的呢?今天小编解锁了2种方法来制作这种图片。一种,是使用合并形状中的“相交功能”;一种,是使用了裁剪功能;其实不管哪一种,最后呈现出来的效果都是一样的。一,用“相交功能”制作局部放大效果1,先在PPT中插入一张图片;2,将这张图片复制一份,且按住“shift键”等比放大;且选中放大的这张图...

weixin_42312133的博客 3万+

从仿真到实战:PMOS缓启动与栅极泄放电路的优化设计

本文深入探讨了PMOS缓启动与栅极泄放电路的优化设计,通过立创EDA仿真和实物调试,解决了关断速度慢和耐压问题。文章详细介绍了电路改进方案和低功耗优化技巧,为工程师提供了实用的工程实践建议,帮助提升电源开关电路的性能和可靠性。

weixin_28721917的博客 260

Qt界面编程(三)—— 父子关系、对象树、信号和槽(自定义信号和槽、Qt5与Qt4的写法)

Qt框架默认提供的标准信号和槽不足以完成我们日常应用开发的需求,比如说点击某个按钮让另一个按钮的文字改变,这时候标准信号和槽就没有提供这样的函数。但是Qt信号和槽机制提供了允许我们自己设计自己的信号和槽。声明在类的signals域下没有返回值,void类型的函数只有函数声明,没有定义可以有参数,可以重载通过emit关键字来触发信号,形式:emit object->sig(参数);

此心光明事上练的博客 1695

照片上弄个放大镜效果图HTML,HTML5 canvas做的一个图片局部放大的效果

看到老外做HTML5的越来越多了,今天看到一个其中用HTML5做的效果不错,是在canvas上画的圈,做放大器,并且监视了鼠标的相关事件,代码如下:HTML部分HTML5 canvas - Image zoomer | Script TutorialsHTML5 canvas - Image zoomer[url=http://www.script-tutorials.com/html5-canv...

weixin_32631729的博客 460

避坑指南:SAP STO订单里‘发货存储地点’栏位不显示?检查这个关键配置

本文深入解析SAP STO订单中‘发货存储地点’栏位缺失问题的根本原因及解决方案。通过激活库存地点间转储功能、维护库存地点主数据等关键配置步骤,帮助用户快速恢复业务操作。特别适用于MM模块实施顾问和SAP系统管理员处理UB STO相关技术问题。

weixin_30632089的博客 99

给页面图片新增放大镜功能

页面图片新增放大镜功能,其实是对图片展示处理时强制进行缩放使页面布局合理,但图片的观看效果确实大打折扣,这里在图片展示区域新增放大镜功能,以解决这样的问题。放大镜的实质就是在图片的附近隐藏一个(原图或放大的原图)尺寸比显示界面更大的背景图片,利用样式遮罩显示局部图片,以达到放大的效果;这里要强调,背景图片的位置(默认左上对齐)与页面的图片的实际布局有关,如果实际页面的图片在展示页面有偏离,需要计算...

pearkerChen 1659

1006. 换个格式输出整数 (15)-PAT乙级真题

1006. 换个格式输出整数 (15)让我们用字母B来表示“百”、字母S表示“十”,用“12…n”来表示个位数字n(&lt;10),换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。输入格式:每个测试输入包含1个测试用例,给出正整数n(&lt;1000)。输出格式:每个测试用例的输出占一行,用规定的格式输出n。输入样例1...

柳婼 の blog 2243

Cesium中级开发教程之二十二:视锥体

教程示例网站:https://thomaz529.github.io。

883

Vue3 + Canvas 搞点好玩的:用mousemove事件实现一个图片局部放大镜(保姆级教程)

本文详细介绍了如何使用Vue3和Canvas实现图片局部放大镜效果,重点讲解了mousemove事件的处理、Canvas绘图逻辑以及性能优化技巧。通过保姆级教程,开发者可以快速掌握这一电商网站常见的交互功能,提升用户体验。

weixin_27070451的博客 184

全新YOLOv11一文弄懂 | YOLOv11网络结构解读 、yolov11.yaml配置文件详细解读与说明、模型训练参数详细解析 | 通俗易懂!入门必看系列!

本文全面介绍了YOLOv11目标检测算法,包含网络结构解析、yaml配置文件详解及训练教程。YOLOv11通过改进的C3k2f模块、SPPF和C2PSA注意力机制等创新设计,在COCO数据集上实现了比YOLOv8更优的性能。文章详细解读了yolov11.yaml配置文件的参数设置、主干网络(backbone)和头部网络(head)结构,并提供了完整的训练代码示例和参数说明。训练部分涵盖了模型选择、参数设置及优化技巧,包括epochs、batch size、学习率等关键参数的调整建议。最后总结了YOLOv11

Ai缝合怪、助力小伙伴高效发论文 3万+

仿淘宝的图片放大镜

上班无聊  写了个简单的仿淘宝图片放大镜的问题   以后再碰到这类问题 直接复制好了 html代码: CSS代码: *{ padding:0px; margin:0px; border:0px;} .all{ margin:0 auto; width:960px;

5165

华为OD机试真题 新系统2026-04-01 C语言 实现【勇攀数字高峰】

请你在给定的数字地形图中寻找登山路径,数字代表当前位置的海拔高度,要求从最低海拔出发,不断攀登,最终到达最高山峰。你需要寻找所有满足条件的登山路径。地图已经保证最低海拔和最高山峰都只有一个。

MISAYAONE的博客 292

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

jquery图片局部放大镜特效

部分代码(完整包见资源下载链接) 注:资源上传时默认付费,可以私信我,我看到会回复的 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>jquery图片局部放大镜特效</title> <style> </style> </head> <body> <img ...

JackieDYH的博客 945

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

JavaScript写图片放大镜

第一个JavaScript案例,写的是网页中经常可以见到的图片放大镜, 看一下效果,如下图: 代码如下: &lt;html&gt; &lt;head lang="en"&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;放大镜&lt;/title&gt; &lt;style&gt;

木易一 337

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JS原生放大镜

利用原生JS写一个放大镜本文用于记录在学习写一个放大镜放大镜的关键原理 鼠标在小图片上移动时,通过捕抓鼠标在小图片上的位置定位大图片的相应位置做放大镜特效需要的元素 1.小图片 2.大图片 3.存放小图片和大图片的容器 4.一个放大镜涉及的技术点鼠标的移入移出鼠标移动3个事件onmouseover onmouseout onmousemove重点 1.如何让小图片的图片和大图片同时移

sinat_29454619的博客 582

图片放大镜效果

原理:最起考虑的原理是,两张图片,一张小图,一张大图,先获取鼠标在小图上面的坐标,然后以一个div来显示大图,并根据小图的坐标乘以大图除以小图得到的倍数定位!开始是把大图设为平铺不重复北景,然后使用背景的position属性来定位,理果比较理想,但是在IE6下面,图片存在闪烁,于是改成以图片的绝对定位方式显示!  效果图:  代码: 复制代码代码如下: /*

行者 734

[原创] JQ仿淘宝图片局部放大镜效果

有的时候我们需要在页面中展示一些高清大图,但是如果直接放在页面中又会显得很占地方,影响用户体验 或者在一些商城网站中,我们需要展示商品的高清大图,所以就需要一个类似放大镜的效果

ydx425的博客 2727
上一篇: 超强幻灯片播放脚本(VBS)
下一篇: ArrayList 类
Triumph
博客等级 码龄26年 13粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值