新手学js的效果图1---( 淘宝等商城货物查看特效)

本人结合之前所学一起写了,多个特效,只是新手自己瞎鼓捣的,思路清晰,具体实现的货物放大镜等,替换当中的img地址就可以查看特效

  

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>卖娃娃</title>
  6     <style>
  7         #big{width:420px;height:300px;border: 1px solid #999;}
  8         #fdj{width:100px;height: 100px;border:1px solid red;position: absolute;background:blue;opacity:0.2;display: none;}
  9         #big img{display:none;}
 10         #small{width:420px;height:40px;}
 11         .bt{float:left;width:80px;height:40px;border:1px solid red;margin-left:2px;text-align:center;line-height:40px;font-size: 20px;}
 12         #bbig{width:400px;height:400px;position:absolute;top:8px;left:440px;overflow: hidden;display: none;}
 13         #bbig img{display:none;}
 14     </style>
 15 </head>
 16 <body>
 17     <div id="big">
 18         <div id="fdj"></div>
 19         <img src="./img/1.jpg" width=‘420px‘ height="300px" style="display:block;">
 20         <img src="./img/2.jpg" width=‘420px‘ height="300px">
 21         <img src="./img/3.jpg" width=‘420px‘ height="300px">
 22         <img src="./img/4.jpg" width=‘420px‘ height="300px">
 23         <img src="./img/5.jpg" width=‘420px‘ height="300px">
 24     </div>
 25     <div id="small">
 26         <div class="bt" style="background:lightgreen;">性感</div>
 27         <div class="bt" >诱惑</div>
 28         <div class="bt" >纯洁</div>
 29         <div class="bt" >妖艳</div>
 30         <div class="bt" >可爱</div>
 31     </div>
 32     <div id="bbig">
 33         <img src="./img/1.jpg" style="display:block;" width="1260" height="900">
 34         <img src="./img/2.jpg" width="1220" height="900">
 35         <img src="./img/3.jpg" width="1220" height="900">
 36         <img src="./img/4.jpg" width="1220" height="900">
 37         <img src="./img/5.jpg" width="1220" height="900">
 38     </div>
 39 </body>
 40 <script>
 41     //获取图片
 42     var imgs = document.getElementById(‘big‘).getElementsByTagName(‘img‘);
 43     //获取图片下的div
 44     var divs = document.getElementById(‘small‘).getElementsByTagName(‘div‘);
 45     //获取放大的图片
 46     var bimgs = document.getElementById(‘bbig‘).getElementsByTagName(‘img‘);
 47     //获取放大镜的图片
 48     var bbig = document.getElementById(‘bbig‘);
 49     //定义初始值
 50     var m = 1;
 51     //鼠标放进下面的标题停止,离开开始
 52     for(var i=0;i<divs.length;i++){
 53         (function(i){
 54             divs[i].onmouseover=function(){
 55                 cImg(i);
 56                 cDiv(i);
 57                 cBbig(i);
 58                 clearInterval(timer);
 59                 m=i+1;
 60             }
 61             divs[i].onmouseout=function(){
 62             timer = setInterval(run,2000);
 63             }
 64         })(i);
 65     }
 66     //定时播放
 67     var timer = setInterval(run,2000);
 68     //定义播放的函数
 69     function run(){
 70         if(m>4){
 71             m = 0;
 72         }
 73         cImg(m);
 74         cDiv(m);
 75         cBbig(m);
 76         m++;
 77     }
 78     //图片轮放
 79     function cImg(n){
 80         for(var i=0;i<imgs.length;i++){
 81             imgs[i].style.display = "none";
 82         }
 83         imgs[n].style.display = "block";
 84     }
 85     //标题轮放
 86     function cDiv(n){
 87         for(var i=0;i<divs.length;i++){
 88             divs[i].style.background = "none";
 89         }
 90         divs[n].style.background = "lightgreen";
 91     }
 92     //放大的图轮放
 93     function cBbig(n){
 94         for(var i=0;i<bimgs.length;i++){
 95             bimgs[i].style.display = "none";
 96         }
 97         bimgs[n].style.display = "block";
 98     }
 99     //鼠标移进去停止,出来继续轮放
100     big.onmouseover = function(){
101         fdj.style.display = "block";
102         bbig.style.display = "block";
103         clearInterval(timer);
104     }
105     big.onmouseout = function(){
106         fdj.style.display = "none";
107         bbig.style.display = "none";
108         timer = setInterval(run,2000);
109     }
110     /*         放大镜      */
111     big.onmousemove=function(e){
112         var e = e || window.event;
113         this.style.cursor="move";
114         var fx = e.clientX - big.offsetLeft;
115         var fy = e.clientY - big.offsetTop;
116
117         document.title = fx+":"+fy;
118
119         fdj.style.left = (fx-42)+"px";
120         fdj.style.top = (fy-42)+"px";
121         //判断光标位置决定放大镜的位置,不出边框
122         if(fx<50){
123             fdj.style.left = 8+"px";
124         }
125         if(fx>370){
126             fdj.style.left = 328+"px";
127         }
128         if(fy<50){
129             fdj.style.top = 8+"px";
130         }
131         if(fy>250){
132             fdj.style.top = 208+"px";
133         }
134         var bigfx = parseInt(fdj.style.left);
135         var bigfy = parseInt(fdj.style.top);
136         console.log(bigfy);
137         console.log(bigfx);
138         //放大镜里显示的东西按倍数
139         bbig.scrollTop = (bigfy-8)*3;
140         bbig.scrollLeft = (bigfx-8)*3;
141         // bbig.style.display = ‘block‘;
142         console.log(‘--------‘);
143         console.log(bbig.scrollTop);
144         console.log(bbig.scrollLeft);
145         // console.log(fdj.style.top);
146     }
147
148
149
150 </script>
151 </html>
时间: 2024-08-09 02:20:09

新手学js的效果图1---( 淘宝等商城货物查看特效)的相关文章

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

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

java B2B2C Springcloud仿淘宝电子商城系统

鸿鹄云商大型企业分布式互联网电子商务平台,推出PC+微信+APP+云服务的云商平台系统,其中包括B2B.B2C.C2C.O2O.新零售.直播电商等子平台. 分布式.微服务.云架构电子商务平台 java b2b2c o2o 技术解决方案 开发语言: java.j2ee 数据库:mysql JDK支持版本: JDK1.6.JDK1.7.JDK1.8版本 通用框架:maven+springmvc+mybatis+spring cloud+spring boot+redis 核心技术:分布式.云服务.微

java B2B2C 仿淘宝电子商城系统-基于Rabbitmq实现延迟消息

1. 预备知识 1.1 消息传递 首先我们知道消费者是从队列中获取消息的,那么消息是如何到达队列的? 当我们发送一条消息时,首先会发给交换器(exchange),交换器根据规则(路由键:routing key)将会确定消息投递到那个队列(queue). 需要JAVA Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码 一零三八七七四六二六 带着这几个关键字:交换器.路由键和队列. 1.2 交换器类型 如之前所说,交换器根据规则决定消息的路由方向.因此,rabbitmq

淘宝——移动端页面终端适配

注:本文参考自:http://www.cnblogs.com/xianyulaodi/p/5533201.html 阅读目录 适配的要求 适配的方法,3个步骤 适配中背景图片的处理 适配的原理解析 摘要:在进行移动端界面的书写的时候,如果把宽度高度或者字体大小全部写死的话,那么在所有手机上看到的大小都一样,存在的问题就是同样大小的字体,或者一个盒子模型, 在大屏幕手机上看起来会有点偏小.比如iphone6PLUS.如果是做成适配的话,就很好的解决了这个问题,大屏幕显示的内容大一点,小屏幕显示的小

前端 抓取淘宝的产品 上架到拼多多

这里只是简单实现,因为时间比较急. 主要解决的问题是,淘宝的那款产品分类很多,拼多多一个一个添加分类太累了,受不了. 还有就是拼多多要求每个分类都必须有图片,这也是坑的一笔. 主要是js实现 抓取淘宝的分类 得到淘宝的分类数组: var arr = []; $("ul.J_TSaleProp li a span").each(function (index) { var item = $("ul.J_TSaleProp li a span")[index]; var

淘宝RubyGems和NPM镜像

题记:前不久在windows下配置jekyll环境时,需要用到gem,一个ruby的管理包,类似于管理nodejs包的npm.安装ruby环境后,使用gem安装包时请求国外的[https://rubygems.org/]镜像一直连不上或间歇性连接失败,之后换成淘宝的RubyGems镜像后,啪啦啪啦地就完事了... Section One 上面说到,使用gem请求rubygems.org资源时会遇到长时间无法响应的问题,解决办法就是使用淘宝的RubyGems镜像,它是一个完整rubygems.or

仿淘宝分页按钮效果简单美观易使用的JS分页控件

分页按钮思想: 1.少于9页,全部显示 2.大于9页,1.2页显示,中间页码当前页为中心,前后各留两个页码 附件中有完整例子的压缩包下载.已更新到最新版本 先看效果图: 01输入框焦点效果 02效果 模仿淘宝的分页按钮效果控件kkpager  JS代码: Js代码   var kkpager = { //divID pagerid : 'div_pager', //当前页码 pno : 1, //总页码 total : 1, //总数据条数 totalRecords : 0, //是否显示总页数

“淘宝天价学车绘本”事件,一次清新脱俗的情怀兜售

自从罗胖子将“情怀营销”发扬光大以来,这个词就有点变味了,受众一听到“情怀”二字,赶紧浑身一哆嗦,哎,你这厮又要给我讲个故事,然后想我感动得自觉掏口袋是吧?但是,最近有一桩打着疑似情怀招牌的事件,与褚橙.罗胖子之流的说情怀卖商品的不同之处在于,其喊的是情怀,最终卖的也是情怀——其主人竟然不是冲着钱去的,这就是实实在在把情怀当成干货卖了. “淘宝天价学车绘本”?这梗疑似炒作 本人说的就是最近很火的“淘宝天价学车绘本”事件,网店掌柜将自己用互联网APP的学车经历画成漫画在淘宝以299元拍卖,最贵的原

淘宝小号交易平台分享淘宝知识给大家,学到就是赚到

http://www.taobao.com/go/act/sale/ruzhujieshao.php http://www.taobao.com/go/act/university/tpanli.php 30 http://www.taobao.com/go/act/sale/hezuohuoban.php http://www.taobao.com/go/act/sale/fuwujieshao.php http://www.taobao.com/go/act/university/taonv