HTML代码:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<link rel="stylesheet" href="style.css" type="text/css" />
<script type='text/javascript' src='script.js'></script>
</head>
<body>
<img id="back" name="back" src="back.jpg" alt = "背景"/>
<div>
<div id="larger" class="size_btn"><img src="+.png" alt="+"></div>
<div id="smaller" class="size_btn"><img src="-.png" alt="+"></div>
</div>
</body>
</html>
JS代码:
$(document).ready(function(){
/******** 先将图片居中并完全显示 ********/
var proportion = 1;
if($(window).width() / $('#back').width() < $(window).height() / $('#back').height())
proportion = $(window).width()/$('#back').width();
else
proportion = $(window).height()/$('#back').height();
var back_width = $('#back').width() * proportion;
var back_height = $('#back').height() * proportion;
var back_left = ($(window).width() - back_width)/2;
var back_top = ($(window).height() - back_height)/2;
$('#back').width(back_width);
$('#back').height(back_height);
$("#back").offset({left:back_left,top:back_top});
//放大缩小操作时的尺寸变化
var sizeX = back_width/10;
var sizeY = back_height/10;
//放大缩小操作时的位置变化
var moveX = sizeX/2;
var moveY = sizeY/2;
//点击放大按钮
$('#larger').click(function(){
$('#back').height("+=" + sizeX);
$('#back').width("+=" + sizeY);
$("#back").offset(function(n,c){
newPos = new Object();
newPos.left = c.left-moveX;
newPos.top = c.top-moveY;
return newPos;
});
});
//点击缩小按钮
$('#smaller').click(function(){
$('#back').height("-=" + sizeX);
$('#back').width("-=" + sizeY);
$("#back").offset(function(n,c){
newPos = new Object();
newPos.left = c.left + moveX;
newPos.top = c.top + moveY;
return newPos;
});
});
//点击图片
$('#back').click(function(event){
var x=($(window).width()/2) - event.clientX + $("#back").offset().left;
var y=($(window).height()/2) - event.clientY + $("#back").offset().top;
$("#back").animate({left:x,top:y});
});
});
css代码:
#back{
left: 0px;
top: 0px;
position:absolute;
z-index:-1;
}
.size_btn{
position:absolute;
height:30px;
width:30px;
}
#larger{
}
#smaller{
top:60px;
}
最终效果:
点击放大按钮:
点击图片的任意位置:
分享到:
相关推荐
一个简单的 针对同一张图片,点击图片放大,再点击缩小.
jQuery 点击图片放大缩小
jquery 实现点击图片放大效果
jQuery适用于手机端图片放大缩小翻转代码 jQuery适用于手机端图片放大缩小翻转代码 jQuery适用于手机端图片放大缩小翻转代码
jquery按钮控制商品图片放大缩小滚动和点击商品图片弹出更多图.
js特效-jQuery H5弹出图片放大缩小旋转插件
jquery+css实现世界地图放大缩小效果,供大家一起共同分享学习。
JQuery实现点击放大缩小图片并可左右滑动图片播放,一个比较酷炫的效果,适合美化页面等
使用jQuery实现的点击图片放大效果。
jQuery提供两种点击图片放大效果,文章内图片放大浏览时使用
主要介绍了jQuery实现的点击图片居中放大缩小功能,涉及jQuery基于事件响应针对页面元素动态操作相关实现技巧,需要的朋友可以参考下
jquery图片放大缩小 鼠标经过 图片在div内部自动放大
基于JQuery的图片放大缩小功能,以及拖动等相关功能。
应项目需求,需要实现图片放大缩小旋转,这里做个记录,方便以后查看,jquery图片放大缩小旋转代码,包括html,css,js,解压即可打开查看效果,方便快捷,
jquery实现点击图片放大,点击图片带有特效的几种放大
一款国外网站翻译过来的图片放大效果,国内至今还未见过此效果。双击图片,图片独立显示,其他内容变暗,点击放大镜,图片放大,效果不错
jquery桌面壁纸网站壁纸图片拖动放大缩小查看 jquery桌面壁纸网站壁纸图片拖动放大缩小查看