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

响应式图片菜单式轮播,兼容手机,平板,PC

时间:2014-12-08 12:09:23      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   color   使用   sp   for   

  昨天在给自己用bootstrap写一个响应式主业模版时想用一个图片轮播js,看到了bootstrap里面的unslider.js,只有1.7k,很小,很兴奋,但使用到最后发现不兼容手机,当分辨率变化的时候不能够正常显示。于是决定自己写一个吧,有一次好像是在腾讯视频网看到了一个那种菜单栏目式的左右滑动轮播,挺好的,跟其他的不同。于是自己动手写了下。效果还行吧可以兼容手机的。

  当鼠标放上去的时候会停止播放,同时把停留的菜单栏目展开,其他缩小。如下图所示:

  bubuko.com,布布扣

bubuko.com,布布扣
bubuko.com,布布扣

  js源码

 1 $(document).ready(function(){
 2 
 3     var width = $(document.body).width();
 4     var width10 = width * 83.33333333 /100;
 5 
 6     var width1 = width10 * 8.33333333 / 100 - 0.5;
 7     var width8 = width10 * 66.66666667 /100;
 8 
 9     var num = 0;
10 
11     function slide(){
12         var class_li = new Array(‘.slideone‘, ‘.slidetwo‘, ‘.slidethree‘, ‘.slidefour‘, ‘.slidefive‘);
13         // var num = Math.floor( Math.random()*5 );
14         $(class_li[num]).animate({ width:width8 }, ‘‘);
15 
16         class_li.splice(num, 1);
17 
18         for( var i =0; i<4 ; i++ ){
19             $(class_li[i]).animate({ width:width1 }, ‘‘);
20         }
21         if( num< 4 )
22             num++;
23         else
24             num = 0;
25     }
26 
27     var t = window.setInterval(slide, 2000);
28 
29     $(".slideone, .slidetwo, .slidethree, .slidefour, .slidefive").mouseenter(function(){
30         window.clearInterval(t);
31         $(this).animate({ width:width8 }, ‘‘);
32 
33         $(this).siblings().animate({ width:width1 }, ‘‘);
34     });
35 
36     $(‘ul‘).mouseleave(function(){
37         t = window.setInterval(slide, 2000);
38     });
39 
40 });

  因为bootstrap响应式的宽度是动态的,于是我先用jquery获取屏幕宽度,然后再分配每一个菜单栏目的宽度,还有需要展开的栏目的宽度。

  html源码

 1         <div class="row">
 2             <div class="col-md-offset-1 col-md-10 slide col-xs-12" style="padding:0px;">
 3                 <ul>
 4                     <li class="col-md-8 slideone col-xs-8"></li>
 5                     <li class="col-md-1 slidetwo col-xs-1"></li>
 6                     <li class="col-md-1 slidethree col-xs-1"></li>
 7                     <li class="col-md-1 slidefour col-xs-1"></li>
 8                     <li class="col-md-1 slidefive col-xs-1"></li>
 9                 </ul>
10             </div>
11         </div>

 

响应式图片菜单式轮播,兼容手机,平板,PC

标签:style   blog   http   io   ar   color   使用   sp   for   

原文地址:http://www.cnblogs.com/jhmydear/p/4150698.html

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