JQ实战天猫淘宝放大镜

这个特效平时生活中很常见,话不多说先上效果图。

首先布局,遮罩层是这个效果中的重点精华,也就是下面代码中的shade.

<style>
* { margin:0px; padding:0px;}
#box { width:400px; height:400px; border:5px solid #CCC; margin:100px auto; position:relative;}
#box .simg {width:400px; height:400px; position:relative;}
#box .simg span.move { width:150px; height:150px; background:red; position:absolute; top:0; left:0; display:block; filter:alpha(opacity=50); opacity:0.5; display:none;}
#box .simg span.shade { width:100%; height:100%; position:absolute; top:0; left:0;filter:alpha(opacity=40); opacity:0.4;}
#box .bimg { width:300px; height:300px; position:absolute; left:430px; top:50px; overflow:hidden; display:none;}
#box .bimg img { position:absolute;}
</style>
</head>

<body>
<div id="box">
    <div class="simg">
        <img src="images/simg.jpg"/>
        <span class="move"></span>
        <span class="shade"></span>
    </div>
    <div class="bimg"><img src="images/bimg.jpg"/></div>
</div>

接下来是JS部分,在实现放大的效果时,小图滑动的比例与大图定位时的相对应的top,left,是效果的关键。

<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script>
    $(function(){
        $(".shade").hover(function(){
            $(".move").show();
            $(".bimg").show();
            },function(){
            $(".move").hide();
            $(".bimg").hide();
                });
        $(".shade").mousemove(function(e){
            var l=e.clientX;
            var t=e.clientY;

            var _top=t-$("#box").offset().top-$(".move").height()/2+"px";
            var _left=l-$("#box").offset().left-$(".move").width()/2+"px";

            //不让从上面和下面出去
            if(parseInt(_top)<0){
                _top=0+‘px‘;
                }else if(parseInt(_top)>parseInt($("#box").height()-$(".move").height())){
                    _top=parseInt($("#box").height()-$(".move").height())+"px";
                    }

            //不让从两边出去
            if(parseInt(_left)<0){
                _left=0+"px";
                }else if(parseInt(_left)>parseInt($("#box").width()-$(".move").width())){_left=parseInt($("#box").width()-$(".move").width())+‘px‘;}

            $(".move").css({top:_top,left:_left});

            //小图可滑动的比例
            var hd_x=parseInt(_left)/parseInt($("#box").width()-$(".move").width());
            var hd_y=parseInt(_top)/parseInt($("#box").height()-$(".move").height());

            //大图对应的top left
            var bm_left=($(".bimg img").width()-$(".bimg").width())*hd_x;
            var bm_top=($(".bimg img").height()-$(".bimg").height())*hd_y;
            $(".bimg img").css({top:-bm_top,left:-bm_left});

            });        

        });

</script>

最后写的有点快,代码不够简洁,注释也挺恶心,有时间修正。

时间: 2024-08-01 22:37:50

JQ实战天猫淘宝放大镜的相关文章

淘宝放大镜效果

淘宝放大镜效果,其实就是一张小图片,还有一张大图片.鼠标移动,按比例显示大图的一部分,在大图的父元素上设置overflow:hidden,就OK了.这里面需要注意换算好大小图的比例. 代码地址:https://github.com/peng666/blogs/tree/gh-pages/floats 在线测试地址:http://peng666.github.io/blogs/floats/

天猫淘宝SEO优化 淘宝排名优化 简单操作见效快 排名销量快速提高

来谈天猫淘宝傻瓜式SEO优化,其实做为新卖家或中小卖家,可能您没购买数据魔方,没有那么多的工具和经验,您听那些“高手”讲的听到云里雾里,好像说得挺牛的,但实际很多您不实用或没法用,或者成本太大了.导致很多听归听做归做. 今天我就来谈个最简单的淘宝SEO方法: 首先,是淘宝宝贝命名. 专家们都拿数据魔方之类的来讲,俺穷,生意一般买了成本太大,所以就来讲不用工具的傻瓜式优化,其实非常简单,只要用您宝贝常用关键字搜一下,然后看到搜索排名前几位的,既销量好,也排名前的(刷单比例比较少的),而且几天下来比

天猫淘宝省钱攻略!你所不知道的内部优惠

你购物,我掏钱.天猫淘宝任你选! 荐好友,领佣金.你省我省大家省! 一路省到底,微信号:vv33487 天猫购物券免费领取_什么是淘宝购物津贴 不用下载 APP,不用验证激活码很多人由于对淘宝优惠券不了解,对于刚接触淘宝优惠券的人来说,问这个问题是正常的.以上是针对天猫购物券免费领取_什么是淘宝购物津贴详细介绍 以前我也加了很多优惠券群,再里面也领过很多淘宝优惠券,还逛过"什么值得买" 逛丢”等这样购物资讯网站,也为自己家里增添了很多实用的小宝贝,让我确实便宜了很多钱,以前不知道,以为

Java爬虫爬取 天猫 淘宝 京东 搜索页和 商品详情

Java爬虫爬取 天猫 淘宝 京东 搜索页和 商品详情 先识别商品url,区分平台提取商品编号,再根据平台带着商品编号爬取数据. 1.导包 <!-- 爬虫相关Jar包依赖 --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.10-FINAL</version> </

丢雷楼谋个天猫淘宝……

要么就说自己蠢呢,做了好几个星期的天猫页,把ID用户的几页放到最后,点击的那个瞬间,懵逼三秒. 天猫跳到了淘宝啊有木有! 弄啥咧! 不知为什么,心里涌现出淡淡的酸楚感,有一种多做了一套的感觉.QAQ TAT 我的电脑内存这么小,运行这么卡,再安装个XAMPP是不是自己就炸了. 唉--感觉对上周的知识掌握的特别浅啊!!!! 心塞--

天猫-淘宝年货精选,最高折扣,最优质量

慢慢的,慢慢的,羊年近了,年货也得提上日程了,这里整理了天猫的年货促销清单,大家有需要的就下载附件吧,以人格担保绝非病毒! 附件一:天猫年货特供.xls,内用零食.国产白酒.洋酒.葡萄酒.茶叶.服装,还有部分天猫国际的免税商品,覆盖国酒茅台.厨具双立人.爱仕达.耐克等,更多信息下载附件! 附件二:淘宝联盟最全年货大促.xls,内用淘宝畅销白酒.过年礼品.过年服装.过年家居等,品牌覆盖国酒茅台.宜家家居等,更多信息请下载附件! 附件三:去啊春节爆款.xls,春节旅游所需航班.酒店.导游信息应有尽有

原生JS实现简单的淘宝放大镜效果

大家经常去淘宝买东西会发现,淘宝上的放大镜效果挺有意思的,这里简单的实现了下,代码中的图片地址 亲们可以自行更换; <!DOCTYPE html> <html> <head> <title>放大镜</title> <meta charset="utf-8" /> <style type="text/css"> *{ margin: 0; padding: 0; } body{ hei

Android自定义控件实战——仿淘宝商品浏览界面

转载请声明出处http://blog.csdn.net/zhongkejingwang/article/details/38656929 用手机淘宝浏览商品详情时,商品图片是放在后面的,在第一个ScrollView滚动到最底下时会有提示,继续拖动才能浏览图片.仿照这个效果写一个出来并不难,只要定义一个Layout管理两个ScrollView就行了,当第一个ScrollView滑到底部时,再次向上滑动进入第二个ScrollView.效果如下: 需要注意的地方是: 1.如果是手动滑到底部需要再次按下

js 实现淘宝放大镜

<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> *{ margin: 0; padding: 0; } .div1, .div2 { width: 430px; height: 430px; float: left; cursor:crosshair; } .di