jCarousel.js 插件
<div class="jcarousel-wrapper">
<div class="jcarousel" data-jcarousel="true">
<ul id="myjcar">
</ul>
</div>
<a href="#" class="jcarousel-control-prev" data-jcarouselcontrol="true"><img
src="data:images/btn_left.png" alt=""></a>
<a href="#" class="jcarousel-control-next" data-jcarouselcontrol="true"><img
src="data:images/btn_right.png" alt=""></a>
</div>
.jcarousel-wrapper {
position: relative;
margin: 20px 30px;
}
.jcarousel {
position: relative;
padding: 20px 0;
overflow: hidden;
width: 100%;
}
.jcarousel ul {
width: 20000em;
position: relative;
list-style: none;
margin:;
padding:;
}
.list-job ul {
position: relative;
width: 20000em;
list-style: none;
margin:;
padding:;
}
.jcarousel li {
width: 300px;
float: left;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
}
<script src="http://libs.useso.com/js/jquery/2.1.1/jquery.min.js"></script>
<!--<script src="http://code.jquery.com/jquery-migrate-1.1.1.js"></script> -->
<script src="http://keleyi.com/keleyi/pmedia/jquery/jquery-migrate-1.2.1.min.js"></script>
<script src="js/jCarousel.js"></script>
<script type="text/javascript">
// 显示个数
var show_size = 3;
// 初始化时中间的位置,从0开始
var middle_index = 1;
// 向前滚动时新的中间位置(试出来的)
var middle_index_when_prev = 1;
// 向后滚动时新的中间位置(试出来的)
var middle_index_when_next = 2; // 图片数据
var mycarousel_itemList = [
{url: 'images/4joblist(1).png', title: 'joblist1'},
{url: 'images/4joblist(2).png', title: 'joblist2'},
{url: 'images/4joblist(3).png', title: 'joblist3'},
{url: 'images/4joblist(4).png', title: 'joblist4'},
{url: 'images/4joblist(5).png', title: 'joblist5'},
{url: 'images/4joblist(6).png', title: 'joblist6'} ]; // 初始化组件时的回调函数
function mycarousel_initCallback(carousel) {
$('.jcarousel-control-prev').bind('click', function () {
carousel.prev();
recover_image();
enlarge_image(middle_index_when_prev);
return false;
}); $('.jcarousel-control-next').bind('click', function () {
carousel.next();
recover_image();
enlarge_image(middle_index_when_next);
return false;
});
} function mycarousel_itemVisibleInCallback(carousel, item, i, state, evt) {
var idx = carousel.index(i, mycarousel_itemList.length);
carousel.add(i, mycarousel_getItemHTML(mycarousel_itemList[idx - 1]));
} function mycarousel_itemVisibleOutCallback(carousel, item, i, state, evt) {
carousel.remove(i);
} // img标签生成方法
function mycarousel_getItemHTML(item) {
return '<img src="' + item.url + '" width="300" height="300" alt="' + item.title + '" />';
} /**
* 切换图片前触发的回调函数
**/
function myItemLoadCallback_beforeFun(data, state) {
var middle = (data.first + data.last) / 2; // 中间图片是第几个?
var index = middle - 1;// 数组是从0开始的
switchArticle(index);
} // 根据中间图片的索引更换文章
function switchArticle(index) {
var size = mycarousel_itemList.length;
while (true) {// index不符合数组要求的话,就修正它
if (index < 0) {
index = size + index;
} else if (index >= size) {
index = index - size;
} else {
break;
}
}
$(".item").removeClass("show");
$(".item").eq(index).addClass("show")
} /**
* 切换图片后触发的回调函数
**/
function myItemLoadCallback_afterFun(data, state) {
var middle = (data.first + data.last) / 2; // 中间图片是第几个?
var index = middle - 1;// 数组是从0开始的
} // 放大
function enlarge_image(index) {
$(".jcarousel li:eq(" + index + ")").addClass("active");
} // 还原
function recover_image() {
$(".jcarousel li").removeClass("active");
} jQuery(document).ready(function () {
jQuery('#myjcar').jcarousel({
size: show_size,
scroll: 1,
wrap: 'circular',
initCallback: mycarousel_initCallback,
itemVisibleInCallback: {onBeforeAnimation: mycarousel_itemVisibleInCallback},
itemVisibleOutCallback: {onAfterAnimation: mycarousel_itemVisibleOutCallback},
itemLoadCallback: {
onBeforeAnimation: myItemLoadCallback_beforeFun,
onAfterAnimation: myItemLoadCallback_afterFun
}
}); recover_image();
enlarge_image(middle_index);
}); </script>
jCarousel.js 插件的更多相关文章
- 【jQuery小实例】js 插件 查看图片
---本系列文章所用使用js均可在本博客文件中找到. 像淘宝一样,鼠标放在某一件商品上,展示大图信息,甚至查看图片的具体部位.给人超炫的效果,这种效果实现基于js文件和js插件.大致可以分为三步,添加 ...
- 【PC端】jQuery+PHP实现浏览更多内容(jquery.more.js插件)
参数说明: 'amount' : '10', //每次显示记录数 'address' : 'comments.php', //请求后台的地址 'format' : 'json', //数据传输格式 ' ...
- chart.js插件生成折线图时数据普遍较大时Y轴数据不从0开始的解决办法[bubuko.com]
chart.js插件生成折线图时数据普遍较大时Y轴数据不从0开始的解决办法,原文:http://bubuko.com/infodetail-328671.html 默认情况下如下图 Y轴并不是从0开始 ...
- jQuery.cookie.js插件了解及使用方法
jquery.cookie.js插件实现浏览器的cookie存储,该插件是基于jquery开发,方便cookie使用. jquerycookie.js的下载地址 http://plugins.jque ...
- Intense Images – 全屏浏览图像的 JS 插件
Intense Images 是一个独立的 JavaScript 库,用于查看全屏图像.使用触摸/鼠标来实现图片位置的平移.图像元素的所有样式都是可以自定义的,Intense.js 只处理图像浏览器和 ...
- 购物车增加、减少商品时动画效果:jQuery.Fly.js插件使用方法
某些电商网站加入购物车和减少购物车商品数量时,有个小动画,以抛物线形式增减,如图: 这里用到了第三方jQuery.Fly.js插件(底层依赖Jquery库,地址:https://github ...
- 代码规范和常用的js插件以及测试工具
1.代码规范 .model层 1.1.1database file_proerty 1.1.2java fileProperty. 1.2.字段要有空指针 1.3.不创建爱数据库外键约束 1.4.已知 ...
- jquery.autocomplete.js 插件的自定义搜索规则
这二天开始用jquery.autocomplete这个自动完成插件.功能基本比较强大,但自己在实际需求中发现还是有一处不足!问题是这样:当我定义了一个本地数据JS文件时,格式为JSON式的数组.如下: ...
- bootstrap实现 手机端滑动效果,滑动到下一页,jgestures.js插件
bootstrap能否实现 手机端滑动效果,滑动到下一页 jgestures.js插件可以解决,只需要引入一个JS文件<script src="js/jgestures.min.js& ...
随机推荐
- 模拟循环单击事件实现layout中间panel全屏
jquery提供了toggle方法 toggle() 方法切换元素的可见状态. 如果被选元素可见,则隐藏这些元素,如果被选元素隐藏,则显示这些元素. 语法 $(selector).toggle(spe ...
- easyui datagrid动态设置行、列、单元格不允许编辑
Easyui datagrid 行编辑.列编辑.单元格编辑设置 功能: 动态对datagrid 进行行.列.单元格编辑进行设置不允许编辑. 禁用行编辑: 在编辑方法调用前,对选择的行进行判断,如果不允 ...
- postman--- form-data、x-www-form-urlencoded、raw、binary分别如何设置
转自:http://blog.csdn.net/wangjun5159/article/details/47781443 1.form-data: 就是http请求中的multipart/form- ...
- 机器学习实战笔记7(Adaboost)
1:简单概念描写叙述 Adaboost是一种弱学习算法到强学习算法,这里的弱和强学习算法,指的当然都是分类器,首先我们须要简介几个概念. 1:弱学习器:在二分情况下弱分类器的错误率会低于50%. 事实 ...
- 教程:VS2010 之TFS入门指南(转载)
[原文发表地址] Tutorial: Getting Started with TFS in VS2010 [原文发表时间] Wednesday, October 21, 2009 1:00 PM 本 ...
- 统一修改 UINavigationBar backItem
{ UINavigationBar * navigationBar = [UINavigationBar appearance]; //返回按钮的箭头颜色 [navigationBar setTint ...
- POJ--3529--Wormholes
Wormholes Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 36889 Accepted: 13520 Descr ...
- windows下安装vundle
windows下安装vundle ## 前言 windows下安装vundle和linux下稍微有些不一样,虽然官网给出了 安装说明,但是有些问题的. E117: Unknown function: ...
- SpringBoot+Shiro引起事务失效、错误原因、解决方法
一.问题今天发现用户注册的Service的事务并没有起到作用,再抛出一个RuntimeException后,并没有发生回滚,下面是调试步骤: 1.检查数据库的引擎是否是innoDB 2.启动类上是否加 ...
- TCP编程,Socket通讯
网络编程分两种,一种是TCP编程,还有一种是UDP编程(点击打开链接).而本文先讲述简单的TCP编程,Socket套接字连接通讯,实现简单的client与server之间的信息传输. 以下是clien ...