jS放大镜效果
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="demo4.aspx.cs" Inherits="test.demo4" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>放大镜</title>
<meta name="keywords" content="" />
<meta name="Description" content="" />
<style type="text/css">
body,div,img {padding:0;margin:0;}
.con {width:256px;height:192px;float:left;}
.con img {width:256px;height:192px;position:absolute;border:1px blue solid;}
.dingwei {position:absolute;width:100px;height:100px;background-color:black;filter:alpha(opacity=20);opacity:0.2;cursor:move;display:none;}
.big {float:left;width:400px;height:400px;margin:100px;overflow:hidden;}
</style>
</head>
<body>
<div class="con" id="father" style="position:relative;">
<img src="img/2.jpg" alt="图片"/>
<div id="aa" class="dingwei"> </div>
</div>
<div class="big" id="bpic">
<div class="inside"><img src="img/2.jpg" alt="图片"/></div>
</div>
<script type="text/javascript">
var divs = document.getElementById("aa");
var fa = document.getElementById("father");
var maxWidth = maxHeight = S = 0;
var big = document.getElementById("bpic");
fa.onmouseover = function () {
divs.style.display = "block";
big.style.display = "block";
S = divs.offsetHeight / 2;
maxWidth = fa.clientWidth - divs.offsetWidth;
maxHeight = fa.clientHeight - divs.offsetHeight; //物块的活动范围;
}
fa.onmousemove = function (e) {
a = e || window.event;
var sbX = a.clientX;
var sbY = a.clientY;
var num = big.clientWidth / divs.clientWidth;
var lf = sbX - S; //鼠标的位置减去元素位置的一半的值就是元素的定位值;
var tp = sbY - S;
//tp =tp<0?0:tp>maxHeight?maxHeight:tp;
//lf =lf<0?0:lf>maxWidth?maxWidth:lf;//判断物块的定位位置然后进行设置
if (tp < 0) { tp = 0; }
else {
if (tp > maxHeight) { tp = maxHeight; }
else { tp = sbY - S; }
}
//判断物块的位置进行设置
if (lf < 0) { lf = 0; }
else {
if (lf > maxWidth) { lf = maxWidth; }
else { lf = sbX - S; }
}
divs.style.left = lf + "px";
divs.style.top = tp + "px";
big.scrollLeft = num * lf;
big.scrollTop = num * tp;
}
fa.onmouseout = function () {
divs.style.display = "none";
big.style.display = "none";
}
</script>
</body>
</html>
jS放大镜效果的更多相关文章
- 最全js 放大镜效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 原生js放大镜效果
效果: 1. 鼠标放上去会有半透明遮罩.右边会有大图片局部图 2. 鼠标移动时右边的大图片也会局部移动 放大镜的关键原理: 鼠标在小图片上移动时,通过捕捉鼠标在小图片上的位置,定位大图片的相应位置 ...
- 原生js实现的放大镜效果
这是我用原生js写的放大镜效果,与各种各样的框架技术相比,我喜欢使用原生的js,在这里,想和大家一起谈谈原生和框架技术的理解与个人喜好. <!DOCTYPE HTML><html&g ...
- 原生js实现放大镜效果
今天做任务的时候,有一个任务就是让实现电商网站常用的放大镜效果,类似于这样的效果,之前并没有做过这种放大镜效果,刚开始的思路是对图片进行裁剪,但是后来发现实在是难以实现,于是求助了万能的谷歌,发现一个 ...
- Magnifier.js - 支持鼠标滚轮缩放的图片放大镜效果
Magnifier.js 是一个 JavaScript 库,能够帮助你在图像上实现放大镜效果,支持使用鼠标滚轮放大/缩小功能.放大的图像可以显示在镜头本身或它的外部容器中.Magnifier.js 使 ...
- JS 文本输入框放大镜效果
JS 文本输入框放大镜效果 今天下午研究了下 "文本输入框放大镜效果" 当然KISSY官网也有这种组件 请看kissy demo 其实这种效果 对于很多童鞋来说 应该并不陌生!我今 ...
- jquery+js实现鼠标位移放大镜效果
jQuery实现仿某东商品详情页放大镜效果 用jquery+js实现放大镜效果,效果大概如下图! 效果是不是大家很感兴趣,放大镜查看细节,下边大家可以详细看一看具体是怎么实现的.下边直接看代码! HT ...
- js、jquery实现放大镜效果
在一些电商网站的商品详情页面,都会有放大镜效果,实现起来并不是很困难,今天用了两个小时,写了一个放大镜效果的实例,来分享给大家! 实现的效果大概是这个样子的 预览 先来看一下效果吧,点击下面的链接预览 ...
- js之放大镜效果
HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
随机推荐
- MSSQL BACKUP WEBSHELL
Title:MSSQL BACKUP WEBSHELL -- Long Long Ago. Version:MSSQL 2005 && + ';alter/**/database/** ...
- LeetCode_ 4 sum
Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = tar ...
- 龙杰ACR122S NFC读卡器
龙杰智能卡有限公司(ACS,龙杰智能卡控股有限公司之全资附属公司,香港联交所上市编号:8210)创立于1995年,是亚太地区第一大.全球三大智能卡读写器供应商之一.ACS被<福布斯亚洲>杂 ...
- 三个QT咨询公司以及QT5.0的主要特点
三个咨询公司(他们也贡献代码):http://www.kdab.com/http://v-play.net/http://www.ics.com/qt 一个论坛:http://forum.qt.io/ ...
- C++ BigInteger 大整数类模板(转)
#include <deque> #include <vector> #include <iostream> #include <string> #in ...
- [Silverlight]常见问题
[Silverlight]常见问题 1. Silverlight项目是否支持ADO.NET对象? 不支持,Silverlight不支持常见的ADO.NET对象,如DataTable,DataSet,D ...
- Understanding the Android Life Cycle
Problem Android apps do not have a “main” method; you need to learn how they get started and how the ...
- mysql启动停止,一台服务器跑 多个mysql数据库
一.以非特权用户运行MySQL服务器在讨论如何启动MySQL服务器之前,让我们考虑一下应该以什么用户身份运行MySQL服务器.服务器可以手动或自动启动.如果你手动启动它, 服务器以你登录Unix(Li ...
- spring配置文件中id与name
1.id属性命名必须满足XML的命名规范,因为id其实是XML中就做了限定的. 2.name属性则没有这些限定,你可以使用几乎任何的名称 3.配置文件中不允许出现两个id相同的<bean> ...
- eclipse快捷键总结
一.自定义快捷键 Window->Preferences->General->keys,进入快捷键管理界面,可以修改默认功能的快捷键组合例:修改以下快捷键功能(快捷键组合尽量保持唯一 ...