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. BackgroundWorker的DoWork方法中发生异常无法传递到RunWorkedCompleted方法

    在使用C#的BackgroundWorker时需要在UI界面上显示DoWork中发生的异常,但怎么调试都无法跳转到界面上,异常也不会传递到RunWorkerCompleted方法中(e.Error为空 ...

  2. 蓝桥杯-买不到的数目-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  3. web安全—浏览器的进制

    浏览器的进制 字符的ascii码值可以转化为进制形式.可以用来绕过XSS filter. HTML属性值中的进制使用 .十进制使用a 表示,&#作为前缀,;作为后缀,后缀也可以没有. 如果要使 ...

  4. highlight.js 代码高亮插件的使用

    在网页使用过程中,经常会用到代码的展示.而不同颜色的代码,可以让代码看起来更直观,也更美观. 找了几个不同的插件,觉得highlight的插件比较实用,而且用起来炒鸡简单. 比如这样: 首先,我们先下 ...

  5. iOS 使用 UIMenuController 且不隐藏键盘的方法

    iOS 使用 UIMenuController 且不隐藏键盘的方法 在键盘显示的时候使用 UIMenuController 弹出菜单,保持键盘显示且可输入的状态. 实现方法有 修改响应链(推荐) 遵循 ...

  6. SVN提交后自动推送消息到钉钉群

    钉钉设置机器人配置 1.进入配置机器人入口 2.添加机器人 3.测试WebHook请求 本人使用Postman进行测试 4.配置SVN 4.1 配置 Pre-commit hook 设置提交内容必须包 ...

  7. namenode和datanode 的namespaceID导致的问题

    namenode和datanode 的namespaceID导致,datanode无法正常的启动,经过查资料,解决的办法就是更改datanode的VERSION之中的namespace namenod ...

  8. hdu3336 Count the string kmp+dp

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3336 很容易想到用kmp 这里是next数组的应用 定义dp[i]表示以s[i]结尾的前缀的总数 那么 ...

  9. flume集群日志收集

    一.Flume简介 Flume是一个分布式的.高可用的海量日志收集.聚合和传输日志收集系统,支持在日志系统中定制各类数据发送方(如:Kafka,HDFS等),便于收集数据.其核心为agent,agen ...

  10. 非阻塞式线程安全列表-ConcurrentLinkedDeque

    一.ConcurrentLinkedDeque public class ConcurrentLinkedDeque<E> extends AbstractCollection<E& ...