jQuery bxCarousel实现图片滚动切换效果示例代码


Posted in Javascript onMay 15, 2013

BxCarousel是一个具有众多配置且易用的Jquery图片滚动插件,特征主要有:
◆ 可以指定显示的元素总数
◆ 可以指定每次滚动的元素个数
◆ 自动播放模式
◆ 前一张/后一张按钮控制图片流动
参数含义
display_num:显示元素的数量,几张图片
move:单击左右控制键时,移动的元素个数,此处为移动2张图片
prev_image:上一元素按钮图片
next_image:下一元素按钮图片
margin:图片之间的间隙,一般设为10px
auto:自动滚动效果
controls:是否显示左右控制按钮,此处为false,表示不显示左右控制按钮
auto_hover:鼠标悬停到轮播区域时,是否停止图片轮播
BxCarousel使用和配置
首先HTML代码需要符合以下格式

<ul> 
<li>first piece of content</li> 
<li>second piece of content</li> 
<li>third piece of content</li> 
<li>fourth piece of content</li> 
<li>bxCarousel can accept an unlimited number of elements</li> 
</ul>

jQuery代码需要符合以下格式
$(document).ready(function(){ 
$('ul').bxCarousel({ 
display_num: 4, // number of elements to be visible 
move: 4, // number of elements to the shift the slides 
speed: 500, // number in milliseconds it takes to finish slide animation 
margin:0, // right margin to be applied to each <li> element (in pixels, although do not include "px") 
auto: false, // automatically play slides without a user click 
auto_interval: 2000, // the amount of time in milliseconds between each auto animation 
auto_dir: 'next', // direction of auto slideshow (options: 'next', 'prev') 
auto_hover: false, // determines if the slideshow will stop when user hovers over slideshow 
next_text: 'next', // text to be used for the 'next' control 
next_image: '', // image to be used for the 'next' control 
prev_text: 'prev', // text to be used for the 'prev' control 
prev_image: '', // image to be used for the 'prev' control 
controls: true // determines if controls will be displayed 
}); 
});

div.bx_container和div.bx_wrap等html元素是js生成加上的,在使用bxCarousel插件时,为了达到视觉美感,要记得为div.bx_container和div.bx_wrap及其内部子元素设定需要的CSS Style。
还有注意的是,
bxCarousel是个无限循环机制,不停的点击next按钮看看html发生了什么变化!!
bxCarousel不只针对图片,对其他任何html元素均起作用。
如果开启auto属性,注意一定要保证speed属性值小于持续时间。
实例代码
<!DOCTYPE html> 
<html> 
<head> 
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" > 
<title></title> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript" src="js/bxCarousel.js"></script> 
<script type="text/javascript"> 
jQuery(function(){ 
jQuery('#demo1').bxCarousel({ 
display_num: 4, // 
move: 1, 
auto: true, 
controls: false, //此处为false,表示不显示左右箭头控制按钮 
margin: 10, 
auto_hover: true //鼠标悬停到轮播区域时,是否停止图片轮播 
}); 
jQuery('#demo2').bxCarousel({ 
display_num: 4, 
move: 4, 
margin: 10 
}); 
}); 
</script> 
<script type="text/javascript" src="./video/js/mootools.js"></script> 
<script type="text/javascript" src="./video/js/swfobject.js"></script> 
<script type="text/javascript" src="./video/js/videobox.js"></script> 
<link rel="stylesheet" type="text/css" href="./video/css/videobox.css" > 
<style type="text/css"> 
.pic, .vd{ 
width:200px; 
height:200px; 
margin:0 auto; 
} 
.pic a, .vd a{ 
display:block; 
width:200px; 
height:200px; 
text-align:center; 
margin:0 auto; 
} 
.pic{ 
background:url("http://i0.sinaimg.cn/home/2013/0513/U2727P30DT20130513082202.jpg") no-repeat scroll 0 0 transparent; 
} 
.vd{ 
background:url("http://i0.sinaimg.cn/home/2013/0512/U1345P30DT20130512114119.jpg") no-repeat scroll 0 0 transparent; 
} 
.nav,.main,.imgcollc ,.footer{ 
width:910px; 
margin:0 auto; 
text-align:center; 
} 
/*如果要使用方向按钮导航,则需要设置.bx_wrap a.prev和.bx_wrap a.next的样式。*/ 
a {color: #424242;text-decoration: none;} 
ul,li,ol{padding:0;margin:0;list-style:none;} 
.bx_wrap {margin-left: 30px; margin-top:10px;} 
.bx_wrap ul img { border: 2px solid #ddd; } 
.bx_wrap ul li{text-align:center;float:left;width:140px;height:119px;overflow:hidden;} 
.bx_wrap ul li a:hover{text-decoration:none; color:#f30;} 
.bx_wrap a.prev {width:20px;height:24px;line-height:24px;outline-style:none;outline-width: 0; position:absolute; top:45px; left:5px; text-indent:-999em; background: url(img/arr_left.gif) no-repeat;} 
.bx_wrap a.next {width:20px;height:24px;line-height:24px; left:623px;position: absolute; top:45px; text-indent:-999em; background:url('img/arr_right.gif') no-repeat;} 
.demo {width: 650px;height: 134px;margin: 40px auto;position: relative;border: 1px solid #d3d3d3;overflow:hidden; 
} 
</style> 
</head> 
<body> 
<div class="nav"> </div> 
<div class="main"> 
<h2 class="top_title"><a href="http://www.feiliu.com/">jQuery实现的视频窗口伸缩、图片滚动切换效果</a></h2> 
<div class="pic"> 
<a onfocus="blur()" id="img" href="http://imgsrc.baidu.com/forum/pic/item/ed178044ad345982578b3fa90cf431adcaef84d7.jpg" rel="vidbox 640 376" title="test jpg"></a> 
</div> 
<div class="vd"> 
<a onfocus="blur()" id="vd" href="http://www.novelstudios.com/media/Visions_CellPhone.mov" rel="vidbox 640 376" title="test video"></a> 
</div> 
</div> 
<div class="imgcollc"> 
<div class="demo"> 
<ul id="demo1"> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s1.jpg"><br/>图片1</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s2.jpg"><br/>图片2</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s3.jpg"><br/>图片3</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s4.jpg"><br/>图片4</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s5.jpg"><br/>图片5</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s6.jpg"><br/>图片6</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s7.jpg"><br/>图片7</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s1.jpg"><br/>图片1</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s2.jpg"><br/>图片2</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s3.jpg"><br/>图片3</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s4.jpg"><br/>图片4</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s5.jpg"><br/>图片5</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s6.jpg"><br/>图片6</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s7.jpg"><br/>图片7</a></li> 
</ul> 
</div> 
<div class="demo"> 
<ul id="demo2"> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s1.jpg"><br/>图片1</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s2.jpg"><br/>图片2</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s3.jpg"><br/>图片3</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s4.jpg"><br/>图片4</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s5.jpg"><br/>图片5</a></li> 
<li><a href="#"><img alt="#" width="140" height="94" src="img/s6.jpg"><br/>图片6</a></li> 
</ul> 
</div> 
</div> 
<div class="footer">Mobile</div> 
</body> 
</html>

本实例中同时实现了灯箱效果。由于采用videobox插件,对于图片和视频都支持。很多灯箱效果的脚本和插件,比如jQuery Lightbox Plugin,Videobox, MooslideBox,,Shadowbox和 LightWindow 等等。
Videobox是一个只有6k大小的脚本,用于在页面中显示视频。Videobox使用swfobject来嵌入Flash。视频可以来自Youtube、Metacafe、Google Video、iFilm和自己设置的Flash。如果你要达到效果,必须使用videobox.js,mootools.js和swfobject脚.js这个三个脚本。

类似滚动滑动的插件还有bxSlider 等等,bxSlider是一个 jQuery 的插件,它可以实现 Slider 和滚动效果。这个插件使用非常简单,并且大小只有 8kb,非常轻量级,所以非常适合在站点和博客中使用。

Javascript 相关文章推荐
用javascript实现在小方框中浏览大图的代码
Aug 14 Javascript
jQuery 连续列表实现代码
Dec 21 Javascript
Jquery提交表单 Form.js官方插件介绍
Mar 01 Javascript
ExtJs设置GridPanel表格文本垂直居中示例
Jul 15 Javascript
jQuery中replaceAll()方法用法实例
Jan 16 Javascript
javascript 数组的定义和数组的长度
Jun 07 Javascript
JavaScript中style.left与offsetLeft的使用及区别详解
Jun 08 Javascript
jQuery图片轮播实现并封装(一)
Dec 03 Javascript
自定义事件解决重复请求BUG的问题
Jul 11 Javascript
微信小程序页面跳转功能之从列表的item项跳转到下一个页面的方法
Nov 27 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
Jun 18 jQuery
vue.js的简单自动求和计算实例
Nov 08 Javascript
JQuery中关于jquery.js与jquery.min.js的比较探讨
May 15 #Javascript
JQuery的AJAX实现文件下载的小例子
May 15 #Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
May 15 #Javascript
url参数中有+、空格、=、%、&amp;、#等特殊符号的问题解决
May 15 #Javascript
js判断FCKeditor内容是否为空的两种形式
May 14 #Javascript
JQuery for与each性能比较分析
May 14 #Javascript
禁用键盘上的(全局)指定键兼容iE、Chrome、火狐
May 14 #Javascript
You might like
PHP详解ASCII码对照表与字符转换
2011/12/05 PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
2017/11/24 PHP
JS模式之简单的订阅者和发布者模式完整实例
2015/06/30 Javascript
AngularJs动态加载模块和依赖注入详解
2016/01/11 Javascript
Webwork 实现文件上传下载代码详解
2016/02/02 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
利用JS判断字符串是否含有数字与特殊字符的方法小结
2016/11/25 Javascript
微信小程序中的swiper组件详解
2017/04/14 Javascript
深入理解react-router@4.0 使用和源码解析
2017/05/23 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
2017/07/12 Javascript
基于mpvue搭建微信小程序项目框架的教程详解
2019/04/10 Javascript
jquery登录的异步验证操作示例
2019/05/09 jQuery
ES6 Proxy实现Vue的变化检测问题
2019/06/11 Javascript
微信小程序表单验证插件WxValidate的二次封装功能(终极版)
2019/09/03 Javascript
Vue.js数字输入框组件使用方法详解
2019/10/19 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
通过Kettle自定义jar包供javascript使用
2020/01/29 Javascript
js实现百度登录窗口拖拽效果
2020/03/19 Javascript
python函数装饰器用法实例详解
2015/06/04 Python
python压缩文件夹内所有文件为zip文件的方法
2015/06/20 Python
Python requests发送post请求的一些疑点
2018/05/20 Python
Pandas过滤dataframe中包含特定字符串的数据方法
2018/11/07 Python
CLR与IL分别是什么含义
2016/08/23 面试题
机修工岗位职责
2013/11/24 职场文书
优秀少先队员主要事迹材料
2014/05/28 职场文书
2014年会计人员工作总结
2014/12/10 职场文书
市场部岗位职责范本
2015/04/15 职场文书
小学德育工作总结2015
2015/05/12 职场文书
父亲节感言
2015/08/03 职场文书
初中班主任教育随笔
2015/08/15 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
化工生产实习心得体会
2016/01/22 职场文书
Nginx中break与last的区别详析
2021/03/31 Servers
Python序列化与反序列化相关知识总结
2021/06/08 Python
Win11安装受阻怎么办? Windows11安装问题与解决方案汇总
2021/11/21 数码科技
python全面解析接口返回数据
2022/02/12 Python