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

时间:2022-11-05 09:22:39

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

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

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

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

  js源码

 $(document).ready(function(){

     var width = $(document.body).width();
var width10 = width * 83.33333333 /100; var width1 = width10 * 8.33333333 / 100 - 0.5;
var width8 = width10 * 66.66666667 /100; var num = 0; function slide(){
var class_li = new Array('.slideone', '.slidetwo', '.slidethree', '.slidefour', '.slidefive');
// var num = Math.floor( Math.random()*5 );
$(class_li[num]).animate({ width:width8 }, ''); class_li.splice(num, 1); for( var i =0; i<4 ; i++ ){
$(class_li[i]).animate({ width:width1 }, '');
}
if( num< 4 )
num++;
else
num = 0;
} var t = window.setInterval(slide, 2000); $(".slideone, .slidetwo, .slidethree, .slidefour, .slidefive").mouseenter(function(){
window.clearInterval(t);
$(this).animate({ width:width8 }, ''); $(this).siblings().animate({ width:width1 }, '');
}); $('ul').mouseleave(function(){
t = window.setInterval(slide, 2000);
}); });

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

  html源码

         <div class="row">
<div class="col-md-offset-1 col-md-10 slide col-xs-12" style="padding:0px;">
<ul>
<li class="col-md-8 slideone col-xs-8">一</li>
<li class="col-md-1 slidetwo col-xs-1">二</li>
<li class="col-md-1 slidethree col-xs-1">三</li>
<li class="col-md-1 slidefour col-xs-1">四</li>
<li class="col-md-1 slidefive col-xs-1">五</li>
</ul>
</div>
</div>

响应式图片菜单式轮播,兼容手机,平板,PC的更多相关文章

  1. 使用Bootstrap 3开发响应式网站实践02&comma;轮播

    本篇体验图片轮播.html部分为: <div class="carousel slide" id="myCarousel" > <!--Ind ...

  2. 使用Bootstrap 3开发响应式网站实践03&comma;轮播下方的内容排版

    通常把一些重要信息.需要重点标注的信息放在轮播的下方显示,这部分区域用到了大字体的标题.副标题以及段落文字等. <div class="row" id="bigCa ...

  3. java 企业站源码 兼容手机平板PC 自适应响应式 SSM主流框架 freemaker 静态引擎

    前台: 支持四套模版, 可以在后台切换   系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以 ...

  4. java 网站源码 六套模版 兼容手机平板PC freemaker 静态引擎 在线编辑模版

    官网 http://www.fhadmin.org/ 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的ht ...

  5. java 网站源码 在线编辑模版 代码编辑器 兼容手机平板PC freemaker 静态引擎

    前台: 支持四套模版, 可以在后台切换   系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以 ...

  6. iOS:实现图片的无限轮播(二)---之使用第三方库SDCycleScrollView

    iOS:实现图片的无限轮播(二)---之使用第三方库SDCycleScrollView 时间:2016-01-19 19:13:43      阅读:630      评论:0      收藏:0   ...

  7. picturefill &plus; picture 标签 实现兼容性很棒的 响应式图片 自适应 屏幕大小

    polyfill 它是一个能够补齐浏览器兼容性问题的一个东西,使用到的<picture></picture>标签 ,并不是所有浏览器都支持,为了实现更好的兼容效果,这里就使用到 ...

  8. css3响应式图片

    响应式图片指用户代理根据输出设备的分辨率不同加载不同类型的图片,不会造成带宽的浪费. 同时,在改变输出设备类型或分辨率时,能及时加载对应类型的图片.   常用的实现方式: 1.用srcset和size ...

  9. iOS:实现图片的无限轮播---之使用第三方库SDCycleScrollView

    SDCycleScrollView API // //  SDCycleScrollView.h //  SDCycleScrollView #import <UIKit/UIKit.h> ...

随机推荐

  1. require&period;js 的使用

    一.为什么要用require.js 在同一个页面要加载多个js文件时,浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长: 其次,由于js文件之间存在依赖关系,因此必须严格保证加载顺序(比 ...

  2. 浏览器js console对象

    js中调用console写日志 console.log("some log"); console.warn("some warning"); console.e ...

  3. Activity启动模式 及 Intent Flags 与 栈 的关联分析

     http://blog.csdn.net/vipzjyno1/article/details/25463457    Android启动模式Flags栈Task   目录(?)[+] 什么是栈 栈 ...

  4. &lbrack;转&rsqb;IIS部署托管管道模式的集成和经典区别

    关于ESPS和SCSJ在Windows server 2008的问题总结 SCSJ出现的问题在于集成模式和经典模式的选择上,系统本身是没有问题的.我们在部署系统的时候,选择了集成模式,导致WebCon ...

  5. 工厂方法模式&lpar;Method Factory&rpar;&comma;理解多态应用的好例子&period;

    工厂方法模式又称为多态性工厂,个人认为多态性工厂更能准确的表达这个模式的用处.与简单工厂(静态工厂)相比较,这里的多态性是指抽象出一个工厂基类,将因为一个产品有N种不同的是现这种变化封装起来,将具体的 ...

  6. 常用数学符号的 LaTeX 表示方法

    常用数学符号的 LaTeX 表示方法 (以下内容主要摘自"一份不太简短的 LATEX2e 介绍") 1.指数和下标可以用^和_后加相应字符来实现.比如: 2.平方根(square ...

  7. 实验四 CC2530平台上UART组件的TinyOS编程

    实验四 CC2530平台上UART组件的TinyOS编程 实验目的: 加深和巩固学生对于TinyOS编程方法的理解和掌握 让学生初步掌握CC2530的UART.及其TinyOS编程方法 学生通过本实验 ...

  8. dojo里添加目录树

    其实循环生成目录树这个方法不仅仅局限于在使用dojo的情况下,只要明白了其中的原理,在任何一种语言下都能动态循环生成. 1. 数据结构 在这里先说明一下数据结构,我这里循环生成目录树的数据结构是像这样 ...

  9. 微信小程序中的循环遍历问题

    比如:如果在微信小程序中要遍历输出 0-9 的数,我们会使用for循环 ;i<;i++){ console.log(i); } 确实结果也是这样: 但是,如果我在循环时同时调用wx的api接口1 ...

  10. C语言内存使用的常见问题及解决之道

    一  前言 本文所讨论的“内存”主要指(静态)数据区.堆区和栈区空间(详细的布局和描述参考<Linux虚拟地址空间布局>一文).数据区内存在程序编译时分配,该内存的生存期为程序的整个运行期 ...