1.关于unslider下载

  官方提供的下载页面是http://www.bootcss.com/p/unslider/,但总是进不了下载页面,所以我就查看主页的源码,找到unslider.min.js链接,复制出来下载。

2.我的第一个banner

  主页的教程是:

  1.引入jQuery 和 Unslider

  

<script src="//code.jquery.com/jquery-latest.min.js"></script>
<script src="//unslider.com/unslider.js"></script>

  2.准备HTML代码

<div class="banner">
<ul>
<li>This is a slide.</li>
<li>This is another slide.</li>
<li>This is a final slide.</li>
</ul>
</div>

  3.添加样式

.banner { position: relative; overflow: auto; }
.banner li { list-style: none; }
.banner ul li { float: left; }

  4.调用unslider

$(function() {
$('.banner').unslider();
});

  按照这个步骤我发现有一点小小的问题:在页面上什么也看不到,打开firebug能够看到确实是在滑动,我觉得是样式的问题,所以我把样式修改了一下,我把.banner加了一个背景色,又给下面的li标签也加了一个背景色和高度好让里面的字显示出来,这样分层也能很好地看出来,于是就变成了这样:

.banner {
position: relative;
overflow: auto;
background: #00f;
} .banner li {
list-style: none;
} .banner ul li {
float: left;
height: 200px;
background: #f00;
}

  这样一改,.banner的背景变成了蓝色,li标签的背景变成了红色,还有一点分层的效果,字也能很清楚地看到。这样第一个banner效果就完成。

3.添加一些其他功能

  当然,强大的unslider可不止这一点,接下来我要给banner下面加一个导航圆点。

  我们在调用unslider的JS里面加入参数{dots: true},即需要导航,在浏览器中用firebug可以看到自动为banner加了一个叫has-dots的类,并且在ul标签后面加了一个ol标签,这个ol标签就是导航的结构,这些都是unslider的JS自动完成的,并不能在HTML源码里看到,接下来我们在firebug里找到和导航有关的类有.dots,.dot,.active,这样就去为这些类添加一些样式:

.dots {
position: absolute;
width: 100%;
text-align: center;
right: 0;
bottom: 20px;
}
.dots li {
display: inline-block;
width: 10px;
height: 10px;
margin: 0 4px;
text-indent: -999em;
border: 2px solid #fff;
border-radius: 6px;
cursor: pointer;
opacity: .4;
-webkit-transition: background .5s, opacity .5s;
-moz-transition: background .5s, opacity .5s;
transition: background .5s, opacity .5s;
}
.dots li.active {
background: #fff;
opacity: 1;
}

  .dots必须要绝对定位,好让他能够浮在图片的上方,给他一个100%的宽度,并且在最右边,然后通过text-align使里面的小圆点居中,距离底部有个20PX距离。每一个小圆点设置一个宽、高和左右距离,再设置一个圆形的边框,就做出了一个小圆点,text-indent可以让里面的字不显示到我们的显示区域里来。最后给一个当前的样式。这样就完成 了小圆点导航。

  其实小圆点还可以改成其他样式的,比如说方形或长条形,只需要改动他的宽、高和圆角就可以了,也可以更改颜色,或者在里面显示1、2、3这样的数字。

  接下来是给banner加一个左右箭头的点击事件,自带有一个{arrows: true} ,但是这个很是不好看,我们准备自行弄一个图片,首先不调用原生的箭头,我们在ul标签前面加上:

<a href="javascript:void(0)" class="unslider-arrow prev"></a>
<a href="javascript:void(0)" class="unslider-arrow next"></a>

  这两行代码就是可以点击控制banner的左右滑动的。接下来是要给他们添加样式:

.unslider-arrow {
display: block;
position: absolute;
top: 50%;
margin-top: -25px;
height: 50px;
width: 50px;
z-index: 3;
opacity: 0.7;
filter: alpha(opacity=70);
background-color: #303030;
background-image: url(../images/unslider-arrow.png);
background-repeat: no-repeat
} .prev {
left: 0px;
background-position: 0 0
} .next {
right: 0px;
background-position: right 0
}

  同样是要绝对定位,然后距离上下的距离可以调整,左右箭头分开再写一个样式,这个就可以用自己的图片来完成箭头的工作,当然还有最后一步,在JS里面控制他们:

  var unslider = $('.banner').unslider();
$('.unslider-arrow').click(function(){
var fn = this.className.split(' ')[1];
unslider.data('unslider')[fn]();
});

  此段代码的意思就是当点击一个箭头时,获取到当前点击箭头的类名,这里只有"unslider-arrow prev"或"unslider-arrow next",然后把他通过空格转换成数组,再取数组的第二个元素,即为"prev"或"next"

最后其实是调用了unslider的data方法,换个方式看就是:unslider.data('unslider').prev()或unslider.data('unslider').next()即实现左右滑动。

4.总结

  unslider还有另外一些参数,比如speed,delay,pause,keys,fluid等,可以调整速度,延迟,键盘控制和响应式,总的来说这是一个很不错的banner插件,而且大小不到3KB,非常好用,如果能把他的方法,属性弄清楚将会有很大的帮助。

初学unslider的更多相关文章

  1. DDD初学指南

    去年就打算总结一下,结果新换的工作特别忙,就迟迟没有认真动手.主要内容是很多初学DDD甚至于学习很长时间的同学没有弄明白DDD是什么,适合什么情况.这世界上没有银弹,抛开了适合的场景孤立的去研究DDD ...

  2. gulp初学

    原文地址:gulp初学 至于gulp与grunt的区别,用过的人都略知一二,总的来说就是2点: 1.gulp的gulpfile.js  配置简单而且更容易阅读和维护.之所以如此,是因为它们的工作方式不 ...

  3. 初学seaJs模块化开发,利用grunt打包,减少http请求

    原文地址:初学seaJs模块化开发,利用grunt打包,减少http请求 未压缩合并的演示地址:demo2 学习seaJs的模块化开发,适合对seajs基础有所了解的同学看,目录结构 js — —di ...

  4. 初学Vue2.0--基础篇

    概述: 鉴于本人初学,使用的编译器是webStorm,需添加对VUE的支持,添加方法可以参考 http://www.jianshu.com/p/142dae4f8b51. 起步: 1. 扎实的 Jav ...

  5. 初学Python

    初学Python 1.Python初识 life is short you need python--龟叔名言 Python是一种简洁优美语法接近自然语言的一种全栈开发语言,由"龟叔&quo ...

  6. 图片轮播图插件的使用 unslider!!!

    1.百度图片轮播图unslider,第一个就会出现jquery unslider轮播图,点击进去,下载网站提供的文件,解压,内部有我们需要使用的各种js,图片等. 2.在自己的eclipse或者int ...

  7. Unslider.js Tiny Sample

    <!-- The HTML --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&g ...

  8. Javascript初学篇章_5(对象)

    对象 Javascript是一种面向对象的语言,因此可以使用面向对象的思想来进行javascript程序设计对象就是由一些彼此相关的属性和方法集合在一起而构成的一个数据实体.举个例子,一只猫是个对象, ...

  9. 初学Objective-C语言需要了解的星星点点

             其实大多数开发初学者都有一些相同的特点,可以说是一种“职业病”.Most有其他平台开发基础的初学者,看到Xcode就想摩拳擦掌:看到Interface Builder就想跃跃欲试:而 ...

随机推荐

  1. Struts2框架的基本使用

         前面已经介绍过了MVC思想,Struts2是一个优秀的MVC框架,大大降低了各个层之间的耦合度,具有很好的扩展性.从本篇开始我们学习Struts2的基本用法,本篇主要包括以下内容: Stru ...

  2. bzoj3112 [Zjoi2013]防守战线

    正解:线性规划. 直接套单纯形的板子,因为所约束条件都是>=号,且目标函数为最小值,所以考虑对偶转换,转置一下原矩阵就好了. //It is made by wfj_2048~ #include ...

  3. HTML5 拖放(Drag 和 Drop)功能开发——基础实战

    随着HTML5的普及度越来越高,现在写代码也遇到一些了,经过同事的点播开展了一次Dojo活动用以技术交流,我也乘此机会将HTML5的拖放功能整理了一下. 简介 拖拽(Drag/Drop)是个非常普遍的 ...

  4. String转int数字格式异常问题

     写在前面的话 差不多一年前就计划写博客,可因为种种原因一直没有写,反而我身边的一些同学在我建议他们写博客不久之后就写了,比如张博同学,基本每次总结一个知识点就写一篇,这样不但方便自己以后查看翻阅,也 ...

  5. map中结构体做关键字的注意事项

    序: 今天做一道题,由于递归函数比较恶心,如果用记忆化搜索,数据范围极大却又用不全(二维数组存的话直接炸).所以决定干脆使用stl::map存储(反正有O2优化),但是执行insert的时候,编译器却 ...

  6. Python函数之lambda,内置函数,yield生成器等

    lambda 1,用于处理简单逻辑 2,自动返回数据(return) 单参数 >>> func2 = lambda a: a+1>>> result = func2 ...

  7. React入门---JSX内置表达式-6

    个人理解:接触的JSX就是在React中render方法里面的js,因为里面只能有一个节点,所以你写的东西都在一个div中,要有js所以通过JSX来表达.(个人菜鸟理解,欢迎指正) React 使用 ...

  8. 弹出输入内容prompt

    <script> window.onload = function(){ var oBtn = document.getElementById( "btn" ); oB ...

  9. 远程登录aws

    AWS的EC2服务器是用密钥来认证的,在创建instance时,会提示,创建一个key pair,同时会提示下载一个xxx.pem的密钥文件到本地硬盘.下面是通过SecureCRT连接到EC2的操作步 ...

  10. Java源码学习 -- java.lang.StringBuilder,java.lang.StringBuffer,java.lang.AbstractStringBuilder

    一直以来,都是看到网上说“ StringBuilder是线程不安全的,但运行效率高:StringBuffer 是线程安全的,但运行效率低”,然后默默记住:一个是线程安全.一个线程不安全,但对内在原因并 ...