/**
* jQuery.hhNewSilder 滚动图片插件
* User: huanhuan
* QQ: 651471385
* Email: th.wanghuan@gmail.com
* 微博: huanhuan的天使
* Date: 13-7-4
* Time: 下午5:20
* Dependence jquery-1.7.2.min.js
*/
$(function(){
$.fn.hhNewSilder = function(infor){
var defaults = {
autoTimer:6000,
speed:1000,
picBox:'thDSpic',
circleBox:'thDSnumber',
leftEle:'thDSprev',
rightEle:'thDSnext',
preLoadSrc:'images/loading.gif',
autoPlay:true,
imgBox:function(){return GetBox();},
imgBoxSize:function(){return GetSize();}
};
var option = $.extend(defaults, infor || {}),
circleLi = option.imgBox().circleLi,
imgList = option.imgBox().imgList,
imgSize = option.imgBoxSize(),
_thisAll = $(this),
n = 1;
$('.'+option.circleBox).find('li:eq(0)').addClass('thScrusor');
//拿到li
function GetBox(){
this.circleLi = $('.'+option.circleBox,_thisAll).find("li");
this.imgList =$('.'+option.picBox,_thisAll).find("li");
return this;
}
//设置宽度、高度
function GetSize(){
this.w = $('.'+option.picBox,_thisAll).width();
this.h = $('.'+option.picBox,_thisAll).height();
return this;
}
var s = GetSize;
s.w
//设置ul的宽度
$('.'+option.picBox, _thisAll).find('ul').css({
width : imgList.width() * imgList.length
});
/*function getSiz(){
var w = $('.'+option.picBox,_thisAll).width();
var h = $('.'+option.picBox,_thisAll).height();
return { w: w, h: h}
}
var size = getSiz();
size.w*/
return this.each(function(){
//初始化时给li添加class="show"
imgList.eq(0).addClass('show').css({'left':0}).siblings().removeClass('show').css({'left':imgSize.w});
function Play(){
if(imgList.is(':animated')) return; //如果在运动则返回
var _index = $('.'+option.picBox).find('li.show').index(); //得到当前的
_index = _index == "-1" ? 0 : _index;
if(imgList.eq(n).hasClass('show')) return; //如果有show class则返回
circleLi.eq(n).addClass('thScrusor').siblings().removeClass('thScrusor'); //圆点
imgList.slice(_index,_index+1).animate({'left':-imgSize.w},option.speed,function(){
$(this).css({'left':imgSize.w});
}).removeClass('show');
imgList.eq(n).animate({left:0},option.speed).addClass('show'); //当前li添加show属性
//追加
if(imgList.length-1>n){
n++;
}else{
n=0;
}
}
_init = function(){
var x=null;
$('.'+option.picBox).find('li:gt(0)').css('left',imgSize.w);
if(option.autoPlay) x=setInterval(Play,option.autoTimer);
circleLi.click(function(){
n = $(this).index();
Play();
if(option.autoPlay){
clearInterval(x);
x=setInterval(Play,option.autoTimer);
}
});
//左右按钮绑定事件
$('.'+option.leftEle+',.'+option.rightEle).css({'opacity':'0.3'}).live({
mouseover:function(){
$(this).stop(true,false).animate({'opacity':'1'},400);
},
mouseout:function(){
$(this).stop(true,false).animate({'opacity':'0.3'},400);
},
click:function(){
var _index = $('.'+option.picBox).find('li.show').index();
if($(this).attr('class')==option.leftEle){
n = _index==0?(imgList.length-1):_index-1;
}else{
n = _index==(imgList.length-1)?0:_index+1;
}
Play();
if(option.autoPlay){
clearInterval(x);
x=setInterval(Play,option.autoTimer);
}
}
});
}
return _init();
});
}
});
- jQuery.hhLRSlider 左右滚动图片插件
/** * jQuery.hhLRSlider 左右滚动图片插件 * User: huanhuan * QQ: 651471385 * Email: th.wanghuan@gmail.com ...
- jQuery页面滚动图片等元素动态加载实现
一.关于滚动显屏加载 常常会有这样子的页面,内容很丰富,页面很长,图片较多.比如说光棍节很疯狂的淘宝商城页面. 或者是前段时间写血本买了个高档耳机的京东商城页面,或者是新浪微博之类. 这些页面图片数量 ...
- [转]jQuery页面滚动图片等元素动态加载实现
本文转自:http://www.zhangxinxu.com/wordpress/?p=1259 一.关于滚动显屏加载 常常会有这样子的页面,内容很丰富,页面很长,图片较多.比如说光棍节很疯狂的淘宝商 ...
- 自己写一个jQuery垂直滚动栏插件(panel)
html中原生的滚动栏比較难看,所以有些站点,会自己实现滚动栏,导航站点hao123在一个側栏中,就自己定义了垂直滚动栏,效果比較好看,截图例如以下: watermark/2/text/aHR0cDo ...
- [JQuery]ScrollMe滚动特效插件
最近考完试,一切顺利,昨晚闲着无聊把最近要用的一个插件翻译了一下:ScrollMe. (╯‵□′)╯︵┻━┻地址请戳: /* ScrollMe -李明夕翻译(╯‵□′)╯︵┻━┻ */ ScrollM ...
- jQuery scrollFix滚动定位插件
[插件功能] 当用户向上或向下滚动页面到一定位置时,目标元素开始固定定位(position:fixed),当回滚到原位置时目标元素恢复到原状态,可以定制触发滚动相对屏幕位置和触发滚动方向,兼容IE6 ...
- 页面滚动图片等元素动态加载插件jquery.scrollLoading.js
如果一个网页很长,那么该页面的加载时间也会相应的较长.而这里给大家介绍的这个jQuery插件scrollLoading的作用则是,对页面元素进行动态加载,通俗的说就是滚到哪就加载到哪,屏幕以下看不见的 ...
- 利用jQuery无缝滚动插件liMarquee实现图片(链接)和文字(链接)向右无缝滚动(兼容ie7+)
像新闻类的版块经常要求一条条的新闻滚动出现,要实现这种效果,可以使用jQuery无缝滚动插件liMarquee. 注意: 1. 它的兼容性是IE7+,及现代浏览器. 2. 引用的jquery的版本最好 ...
- jquery 单行滚动、批量多行滚动、文字图片翻屏滚动效果代码
jquery单行滚动.批量多行滚动.文字图片翻屏滚动效果代码,需要的朋友可以参考下. 以下代码,运行后,需要刷新下,才能加载jquery,要不然看不到效果.一.单行滚动效果 <!DOCTYPE ...
随机推荐
- KeyTweak 键盘按键功能修改
最近一致再用ThinkPad S3,悲剧的是上翻页和下翻页竟然和方向键在一起,经常按错光标不知道去哪里了. 实在忍受不了,竟然有这样的软件,哈哈. KeyTweak,用起来太方便了
- hdu 5480 Conturbatio 线段树 单点更新,区间查询最小值
Conturbatio Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=54 ...
- 基于反射实现自己主动化restful开发
[Author]: kwu 基于反射实现自己主动化restful开发,通用的仅仅须要写查询数据库的sql.并增加相应的javabean实现的高速restful服务的开发. 1.编写数据库的查询sql. ...
- [Effective C++ --026]尽可能延后变量定义式的出现时间
引言 每一次构造和析构都需要成本,因此我们在设计代码的时候,应该尽可能考虑到构造和析构的成本. 第一节 延后实现 考虑有以下的代码: void encrypt(string& s); stri ...
- 简洁判断一个byte中有多少位为1的bit?
以下是Brian W. Kernighan公开的一个方法 unsigned bit_count(unsigned v) { unsigned int c; //置位总数累计 ; v; c++) { v ...
- 聊聊 iOS 开发中的协议
前言 何为协议,简单来说在OC中我们使用关键字@protocol可以声明一个协议,并在协议中添加多个属性.方法供于遵循者实现,从某个角度上来说,这是一种不同于category机制的category.在 ...
- Spring中Bean的生命中期与InitializingBean和DisposableBean接口
Spring提供了一些标志接口,用来改变BeanFactory中的bean的行为.它们包括InitializingBean和DisposableBean.实现这些接口将会导致BeanFactory调用 ...
- 使用SDWebImage 怎么获取指定请求对应的缓存图片呢?
SDWebImage会对我们加载的网络数据进行缓存,但有时候我们想要拿到缓存数据中的图片,可以通过下个方法实现: UIImage *thumbnailImage = [[SDImageCache sh ...
- 在oc代码中使用swift第三方框架
swift现在使用越来越多了,一些主流的框架或者效果比较好的demo都陆陆续续使用swift写了.所以,要学会如何在oc的项目中调用swift. 这里主要借助一个桥梁文件,这个桥梁文件一般在你导入sw ...
- Linux下librdkafka客户端的编译运行
Linux下librdkafka客户端的编译运行 librdkafka是一个开源的Kafka客户端C/C++实现,提供了Kafka生产者.消费者接口. 由于项目需要,我要将Kafka生产者接口封装起来 ...