<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title> <style>
#smallImg {
position: absolute;
left: 50px;
top: 100px;
}
#smallImg, #smallImg img {
width: 200px;
height: 200px;
}
#smallArea {
display: none;
width: 50px; height: 50px; background: rgba(200, 222,111, 0.3);
position: absolute; left: 50px; top: 0;
} #bigArea {
display: none; overflow: hidden;
width: 300px; height: 300px; background: rgba(200,111,222,0.3);
position: absolute; left: 300px; top: 100px;
}
#bigImg {
width: 800px; height: 800px;
position: absolute; left: 0; top: 0;
} </style> <script type="text/javascript" src="js/jquery-1.12.3.js" ></script>
<script>
$(function(){ //等比公式
//小图width/大图width == 小区域width/大区域width
$("#smallArea").width( $("#smallImg").width() * $("#bigArea").width() / $("#bigImg").width() );
$("#smallArea").height( $("#smallImg").height() * $("#bigArea").height() / $("#bigImg").height() ); //放大系数
var scale = $("#bigImg").width() / $("#smallImg").width(); //在小图中移动
$("#smallImg").mousemove(function(e){
$("#smallArea").show(); //显示小区域
$("#bigArea").show(); //显示大区域 var x = e.pageX - $("#smallImg").offset().left - $("#smallArea").width()/2;
var y = e.pageY - $("#smallImg").offset().top - $("#smallArea").height()/2; //控制不超出左右边界
if (x < 0){
x = 0;
}
else if (x > $("#smallImg").width()-$("#smallArea").width()){
x = $("#smallImg").width()-$("#smallArea").width();
}
//控制不超出上下边界
if (y < 0){
y = 0
}
else if (y > $("#smallImg").height()-$("#smallArea").height()) {
y = $("#smallImg").height()-$("#smallArea").height();
} //小区域移动
$("#smallArea").css({left:x, top:y}); //大图移动
$("#bigImg").css({left: -scale*x,top: -scale*y});
}) //移除小图
$("#smallImg").mouseleave(function(){
$("#smallArea").hide(); //隐藏小区域
$("#bigArea").hide(); //隐藏大区域
})
})
</script>
</head>
<body>
<div id="smallImg">
<img src="data:images/星际穿越.jpg" />
<div id="smallArea"></div>
</div>
<div id="bigArea">
<img id="bigImg" src="data:images/星际穿越.jpg" />
</div>
</body>
</html>

最新文章

  1. 总结30个CSS3选择器
  2. Intro.js 网站演示
  3. 初学Memcached安装及使用(CentOS7)
  4. CentOS install GCC-4.8.5
  5. Symfony2创建基于域名的路由(原创翻译)
  6. [CLR via C#]10. 属性
  7. Codeforces 498C Array and Operations(最大流)
  8. 关于UIView需要看的一些官方文档
  9. pat 1055 区间前k个
  10. 简单易懂的命名空间及use的使用
  11. BearSkill实用方法之UITextField限制输入的字符数量
  12. SilverLight 页面后台方法XX.xaml.cs 创建JS,调用JS ,弹出提示框
  13. 玩转python之字符串逐个字符或逐词反转
  14. AspNetCore - MVC实战系列(一)
  15. 【操作教程】SequoiaDB分布式存储教程
  16. linkin大话面向对象--继承
  17. sqlachemy 获取新创建对象的id,flush与commit
  18. python之tkinter使用-简单对话框
  19. Codeforces Round #412 C. Success Rate
  20. java的Timer和TimerTask

热门文章

  1. KiCAD输出生产文件
  2. Oracle 环境部署 以及数据库创建 ,用户新建和权限分配
  3. 64位 __int 与 long long写法
  4. ANdroid手机屏幕反横向等参数设定
  5. Vuex白话教程第六讲:Vuex的管理员Module(实战篇)
  6. github fork代码后提交
  7. Windows cmd 打开面板
  8. 使用用Intellij Idea从Github上获取代码
  9. 最全的PS快捷键大全!
  10. 牛客网暑期ACM多校训练营(第五场) Agpa (最大化平均值)