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



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的更多相关文章
- 使用Bootstrap 3开发响应式网站实践02,轮播
本篇体验图片轮播.html部分为: <div class="carousel slide" id="myCarousel" > <!--Ind ...
- 使用Bootstrap 3开发响应式网站实践03,轮播下方的内容排版
通常把一些重要信息.需要重点标注的信息放在轮播的下方显示,这部分区域用到了大字体的标题.副标题以及段落文字等. <div class="row" id="bigCa ...
- java 企业站源码 兼容手机平板PC 自适应响应式 SSM主流框架 freemaker 静态引擎
前台: 支持四套模版, 可以在后台切换 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以 ...
- java 网站源码 六套模版 兼容手机平板PC freemaker 静态引擎 在线编辑模版
官网 http://www.fhadmin.org/ 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的ht ...
- java 网站源码 在线编辑模版 代码编辑器 兼容手机平板PC freemaker 静态引擎
前台: 支持四套模版, 可以在后台切换 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以 ...
- iOS:实现图片的无限轮播(二)---之使用第三方库SDCycleScrollView
iOS:实现图片的无限轮播(二)---之使用第三方库SDCycleScrollView 时间:2016-01-19 19:13:43 阅读:630 评论:0 收藏:0 ...
- picturefill + picture 标签 实现兼容性很棒的 响应式图片 自适应 屏幕大小
polyfill 它是一个能够补齐浏览器兼容性问题的一个东西,使用到的<picture></picture>标签 ,并不是所有浏览器都支持,为了实现更好的兼容效果,这里就使用到 ...
- css3响应式图片
响应式图片指用户代理根据输出设备的分辨率不同加载不同类型的图片,不会造成带宽的浪费. 同时,在改变输出设备类型或分辨率时,能及时加载对应类型的图片. 常用的实现方式: 1.用srcset和size ...
- iOS:实现图片的无限轮播---之使用第三方库SDCycleScrollView
SDCycleScrollView API // // SDCycleScrollView.h // SDCycleScrollView #import <UIKit/UIKit.h> ...
随机推荐
- CLR 这些年有啥变化吗?
引言 首先想给初学者推荐下<CLR via C#>这本好书,做.Net开发的开发者应该都读一下.为避免广告之嫌,所以这里只提供豆瓣书评的链接. CLR 作为.Net 程序跨平台运行的载体, ...
- SSH实战 · 用spring框架下的hibernatetemplate的get方法出现的问题
用get方法查询: return this.getHibernateTemplate().get(Product.class, pid); 出现错误为:id to load is requi ...
- JavaScript function函数种类
本篇主要介绍普通函数.匿名函数.闭包函数 目录 1. 普通函数:介绍普通函数的特性:同名覆盖.arguments对象.默认返回值等. 2. 匿名函数:介绍匿名函数的特性:变量匿名函数.无名称匿名函数. ...
- 比Mysqli操作数据库更简便的方式 。PDO
下面来说一下PDO 先画一张图来了解一下 mysqli是针对mysql这个数据库扩展的一个类 PDO是为了能访问更多数据库 如果出现程序需要访问其他数据库的话就可以用PDO来做 PDO数据访问抽象层1 ...
- ASP.NET Core: You must add a reference to assembly mscorlib, version=4.0.0.0
ASP.NET Core 引用外部程序包的时候,有时会出现下面的错误: The type 'Object' is defined in an assembly that is not referenc ...
- [开发笔记] Graph Databases on developing
TimeWall is a graph databases github It be used to apply mathematic model and social network with gr ...
- Lind.DDD.LindAspects方法拦截的介绍
回到目录 什么是LindAspects 之前写了关于Aspects的文章<Lind.DDD.Aspects通过Plugins实现方法的动态拦截~Lind里的AOP>,今天主要在设计思想上进 ...
- css样式之background详解
background用法详解: 1.background-color 属性设置元素的背景颜色 可能的值 color_name 规定颜色值为颜色名称的背景颜色(比如 red) he ...
- vue.js几行实现的简单的todo list
序:目前前端框架如:vue.react.angular,构建工具fis3.gulp.webpack等等...... 可谓是五花八门,层出不穷,眼花缭乱...其实吧只要你想玩还是可以玩玩的..下面是看了 ...
- 二叉树的递归实现(java)
这里演示的二叉树为3层. 递归实现,先构造出一个root节点,先判断左子节点是否为空,为空则构造左子节点,否则进入下一步判断右子节点是否为空,为空则构造右子节点. 利用层数控制迭代次数. 依次递归第二 ...