jQuery实现 图片的局部放大效果

<html xmlns="http://www.w3.org/1999/xhtml">
<head>  
    <title></title>  
    <script src="data:images/jquery-1.8.2.min.js" type="text/javascript"></script>  
    <style type="text/css" >  
    #bigimg { position:absolute;display:none; overflow:hidden; height:400px; width:400px;margin-left:200px;margin-top:-20px; }  
    #smalldiv{position:absolute;  display:none;}  
    </style>  
    <script type="text/javascript">  
        $(function () {  
            var count = 0;
$("#img").mousemove(function (e) {  
                var smalldiv = $("#smalldiv");  
                var ZoomSizeWidth = $("#img1").width() / $("#img_zoom").width(); //宽放大的倍数  
                var ZoomSizeHeight = $("#img1").height() / $("#img_zoom").height();//高放大的倍数  
                $("#bigimg").show();  
                smalldiv.show();  
                var mouseX = e.pageX + 5;  
                var mouseY = e.pageY + 5;
if (e.pageX < $(this).offset().left + smalldiv.width() / 2) {//当鼠标的X坐标小于图片与div遮罩层的x坐标和是divx=0;  
                    divX = 0;  
                }  
                else if (e.pageX > $(this).offset().left + smalldiv.width() / 2 && e.pageX < $(this).offset().left + $(this).width() - smalldiv.width() / 2) {//鼠标的X坐标在图片内部并且小于图片最右边的X坐标  
                    divX = e.pageX - $(this).offset().left - smalldiv.width() / 2;  
                }  
                else if (e.pageX > $(this).offset().left + $(this).width() - smalldiv.width() / 2) {//鼠标的X坐标大于图片的最右边的X坐标 (Y轴同理)  
                    divX = $(this).width() - smalldiv.width();  
                }
if (e.pageY < $(this).offset().top + smalldiv.height() / 2) {  
                    divY = 0;  
                }  
                else if (e.pageY > $(this).offset().top + smalldiv.height() / 2 && e.pageY < $(this).offset().top + $(this).height() - smalldiv.height() / 2) {  
                    divY = e.pageY - $(this).offset().top - smalldiv.height() / 2;  
                }  
                else if (e.pageY > $(this).offset().top - smalldiv.height()) {  
                    divY = $(this).height() - smalldiv.height();  
                }
$("#bigimg").css("top", mouseY).css("left", mouseX);  
                smalldiv.css("top", divY).css("left", divX);  
                smalldiv.appendTo("#img");  
                var tempX = smalldiv.offset().left - $(this).offset().left;//通过对大图的位置偏移来起到放大的效果  
                var tempY = smalldiv.offset().top - $(this).offset().top;  
                $("#img1").css("top", -tempY * ZoomSizeHeight).css("left", -tempX * ZoomSizeWidth);  
            });
$("#img").mouseleave(function (e) {  	
			$("#smalldiv").hide();  
			$("#bigimg").hide();  
		});
})  
    </script>  
</head>  
<body>  
<div id="img" style=" width:200px; height:200px;margin-left:200px; position:relative; margin-top:30px"><img alt="图片" src="data:images/Desert.jpg" id="img_zoom" width="200" height="200"/></div>  
<div id="bigimg" ><img  alt="放大后图片" id="img1" src="data:images/Desert.jpg" width="800px" height="800px" style="position:absolute" /></div>  
<div id="smalldiv" style="width:50px; background-color: rgba(0,0,0,0.5); height:50px; border:1px solid gray; "></div>  
</body>  
</html>
文章摘自:http://blog.csdn.net/kai161/article/details/9384375
jQuery实现 图片的局部放大效果的更多相关文章
- jQuery个性化图片轮播效果
		jQuery个性化图片轮播效果 购物产品展示:图片轮播器<效果如下所示> 思路说明: 每隔一段时间,实现图片的自动切换及选项卡选中效果,鼠标划入图片动画停止,划出或离开动画开始 两个区域: ... 
- 基于jQuery遮罩图片hover翻转效果
		基于jQuery遮罩图片hover翻转效果.这是一款基于jQuery+css3实现的鼠标经过遮罩图片翻转特效.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div cla ... 
- [转]jQuery实现图片轮播效果,jQuery实现焦点新闻
		本文转自:http://blog.csdn.net/tsyj810883979/article/details/8986157 效果图: 实现代码: <!DOCTYPE html> < ... 
- JQuery实现图片轮播效果源码
		======================整体结构======================== <div class="banner"> <ul class ... 
- 使用JQuery实现图片轮播效果
		[效果如图] [原理简述] 这里大概说一下整个流程: 1,将除了第一张以外的图片全部隐藏, 2,获取第一张图片的alt信息显示在信息栏,并添加点击事件 3,为4个按钮添加点击侦听,点击相应的按钮,用f ... 
- jQuery实现图片伦播效果(淡入淡出+左右切换)
		<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ... 
- (转)jquery实现图片轮播
		<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ... 
- JQuery图片切换动画效果
		由于博主我懒,所以页面画的比较粗糙,但是没关系,因为我主要讲的是如何实现图片动画切换. 思路:想必大家都逛过淘宝或者其他的一些网站,一般都会有图片动画切换的效果,那是怎样实现的呢?博主我呢,技术不是很 ... 
- Image Wall - jQuery & CSS3 图片墙效果
		今天我们要为您展示如何基于 jQuery 和 CSS3 创建一个整洁的图片墙效果.我们的想法是在页面上洒上一些大小不同的缩略图,并在当我们点击图片时候显示丝带,会显示一些描述,再次点击缩略图时,丝带将 ... 
随机推荐
- Activiti(工作流)学习资源总结
			刚进公司第一个项目就是oa项目,不会activiti,只得自学,途中搜集到的activiti学习资源总结 1.activiti初体验 http://blog.csdn.net/bluejoe2000/ ... 
- 安装aptana(1)
			以前在myeclipse8.5上装了aptana,现在用myeclipse2014了,但是用原来的方法没有安装上,网上搜了下,发现都是老的方法,对新版的myeclipse已经不适用了,下面是转载的一篇 ... 
- 物流进程html+css页面
			<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> & ... 
- $(#form :input)与$(#form input)的区别
			相信大家都很奇怪这两者的区别 我从两个方面简单介绍下 1. $("form :input") 返回form中的所有表单对象,包括textarea.select.button等 ... 
- 淘淘商城_day06_课堂笔记
			今日大纲 实现单点登录系统 基于单点登录系统实现,用户的注册和登录 商品数据同步问题 问题 后台系统中将商品修改,前台系统没有进行数据的同步,导致前端系统不能够实时显示最新的数据. 解决 后台系统中商 ... 
- Maven-项目构建技术(工具)
			Maven-项目构建技术(工具) 主要的内容目标:如何创建项目.如何导入jar.如何进行其他配置.如何管理生命周期 今天的主要安排: maven的概述(为什么要用?是什么) 快速入门(配置.名词解释. ... 
- Linux服务器时间设置命令
			hwclock -r # 读取BIOS 时间 hwclock -w # 将当前系统时间写入BIOS date -s 2010/10/02 # 设置年月日 date -s 15: ... 
- wordpress 删除底部"自豪地采用 WordPress"
			找到footer.php文件,删除以下代码即可: <footer id="colophon" class="site-footer" role=" ... 
- .parents() 与 .parent()对比
			今天使用jQuery时候需要用到parents()方法,css()方法的使用 现在只是知道可以取到父级DOM节点,研究是否可以通过选取class名或者id名进行选取. 取到父级DOM节点 $(e.sr ... 
- json恶补
			JS操作JSON总结 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScr ... 
