码迷,mamicode.com
首页 > Web开发 > 详细

jquery放大镜

时间:2015-02-07 13:01:21      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:

效果体验:http://runjs.cn/detail/dvygyp5t

demo下载

<!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>
<script type="text/javascript" src="http://code.jquery.com/jquery.js"></script>
</head>

<body>

<div id="div1">

    <div class="small_pic">
        <span class="mark"></span>
        <span class="float_layer"></span>
        <img src="http://www.helloweba.com/demo/cloud-zoom/images/smallimage.jpg" />
    </div>

    <div class="big_pic">
        <img src="http://www.helloweba.com/demo/cloud-zoom/images/bigimage00.jpg"/>
    </div>
<script type="text/javascript">
$(function(){
    $(".mark").hover(function(){
        $(".float_layer,.big_pic").show();
    },function(){
        $(".float_layer,.big_pic").hide();
    })
    
    $(".mark").mousemove(function(ev){
        var e = ev || event;
        
        var left = e.clientX - $("#div1").offset().left-$(".small_pic").offset().left-$(".float_layer").width()/2;
        var top = e.clientY - $("#div1").offset().top-$(".small_pic").offset().top-$(".float_layer").height()/2;
        
        var sDistanceX = $(".mark").outerWidth()-$(".float_layer").outerWidth();
        var sDistanceY = $(".mark").outerHeight()-$(".float_layer").outerHeight();

        if(left<0){
            left = 0;
        }
        else if(left > sDistanceX){
            left = sDistanceX ;
        }
        if(top<0){
            top=0;
        }
        else if(top > sDistanceY){
            top = sDistanceY;
        }

        $(".float_layer").css({left:left,"top":top});

        var scoreX = left/sDistanceX;
        var scoreY = top/sDistanceY;
        
        var  bDistanceX = $(".big_pic img").outerWidth() - $(".big_pic").outerWidth();
        var  bDistanceY = $(".big_pic img").outerHeight() - $(".big_pic").outerHeight();

        $(".big_pic img").css({left:(-scoreX*bDistanceX),top:(-scoreY*bDistanceY)});
    })
})
</script>
</body>
</html>

 

jquery放大镜

标签:

原文地址:http://www.cnblogs.com/wanliyuan/p/4278560.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!