jquery简单轮播代码

@charset "utf-8";
html, body { font-family:"微软雅黑"}
div.slideBox{ position:relative; width:670px; height:300px; overflow:hidden;}
div.slideBox ul.items{ position:absolute; float:left; background:none; list-style:none; padding:0px; margin:0px;}
div.slideBox ul.items li{ float:left; background:none; list-style:none; padding:0px; margin:0px;}
div.slideBox ul.items li a{ float:left; line-height:normal !important; padding:0px !important; border:none/*For IE.ADD.JENA.201206300844*/;}
div.slideBox ul.items li a img{ margin:0px !important; padding:0px !important; display:block; border:none/*For IE.ADD.JENA.201206300844*/;}
div.slideBox div.tips{ position:absolute; bottom:0px; width:100%; height:50px; background-color:#000; overflow:hidden;}
div.slideBox div.tips div.title{ position:absolute; left:0px; top:0px; height:100%;}
div.slideBox div.tips div.title a{ color:#FFF; font-size:18px; line-height:50px; margin-left:10px; text-decoration:none;}
div.slideBox div.tips div.title a:hover{ text-decoration:underline !important;}
div.slideBox div.tips div.nums{ position:absolute; right:0px; top:0px; height:100%;}
div.slideBox div.tips div.nums a{ display:inline-block; >float:left/*For IE.ADD.JENA.201206300844*/; width:20px; height:20px; background-color:#FFF; text-indent:-99999px; margin:15px 10px 0px 0px;}
div.slideBox div.tips div.nums a.active{ background-color:#093;}

js

(function($) {
	$.fn.slideBox = function(options) {
		//默认参数
		var defaults = {
			direction : ‘left‘,//left,top
			duration : 0.6,//unit:seconds
			easing : ‘swing‘,//swing,linear
			delay : 3,//unit:seconds
			startIndex : 0,
			hideClickBar : true,
			clickBarRadius : 5,//unit:px
			hideBottomBar : false,
			width : null,
			height : null
		};
		var settings = $.extend(defaults, options || {});
		//计算相关数据
		var wrapper = $(this), ul = wrapper.children(‘ul.items‘), lis = ul.find(‘li‘), firstPic = lis.first().find(‘img‘);
		var li_num = lis.size(), li_height = 0, li_width = 0;
		//定义滚动顺序:ASC/DESC.ADD.JENA.201208081718
		var order_by = ‘ASC‘;
		//初始化
		var init = function(){
			if(!wrapper.size()) return false;
			//手动设定值优先.ADD.JENA.201303141309
			li_height = settings.height ? settings.height : lis.first().height();
			li_width = settings.width ? settings.width : lis.first().width();

			wrapper.css({width: li_width+‘px‘, height:li_height+‘px‘});
			lis.css({width: li_width+‘px‘, height:li_height+‘px‘});//ADD.JENA.201207051027

			if (settings.direction == ‘left‘) {
				ul.css(‘width‘, li_num * li_width + ‘px‘);
			} else {
				ul.css(‘height‘, li_num * li_height + ‘px‘);
			}
			ul.find(‘li:eq(‘+settings.startIndex+‘)‘).addClass(‘active‘);

			if(!settings.hideBottomBar){//ADD.JENA.201208090859
				var tips = $(‘<div class="tips"></div>‘).css(‘opacity‘, 0.6).appendTo(wrapper);
				var title = $(‘<div class="title"></div>‘).html(function(){
					var active = ul.find(‘li.active‘).find(‘a‘), text = active.attr(‘title‘), href = active.attr(‘href‘);
					return $(‘<a>‘).attr(‘href‘, href).text(text);
				}).appendTo(tips);
				var nums = $(‘<div class="nums"></div>‘).hide().appendTo(tips);
				lis.each(function(i, n) {
					var a = $(n).find(‘a‘), text = a.attr(‘title‘), href = a.attr(‘href‘), css = ‘‘;
					i == settings.startIndex && (css = ‘active‘);
					$(‘<a>‘).attr(‘href‘, href).text(text).addClass(css).css(‘borderRadius‘, settings.clickBarRadius+‘px‘).mouseover(function(){
						$(this).addClass(‘active‘).siblings().removeClass(‘active‘);
						ul.find(‘li:eq(‘+$(this).index()+‘)‘).addClass(‘active‘).siblings().removeClass(‘active‘);
						start();
						stop();
					}).appendTo(nums);
				});

				if(settings.hideClickBar){//ADD.JENA.201206300847
					tips.hover(function(){
						nums.animate({top: ‘0px‘}, ‘fast‘);
					}, function(){
						nums.animate({top: tips.height()+‘px‘}, ‘fast‘);
					});
					nums.show().delay(2000).animate({top: tips.height()+‘px‘}, ‘fast‘);
				}else{
					nums.show();
				}
			}

			lis.size()>1 && start();
		}
		//开始轮播
		var start = function() {
			var active = ul.find(‘li.active‘), active_a = active.find(‘a‘);
			var index = active.index();
			if(settings.direction == ‘left‘){
				offset = index * li_width * -1;
				param = {‘left‘:offset + ‘px‘ };
			}else{
				offset = index * li_height * -1;
				param = {‘top‘:offset + ‘px‘ };
			}

			wrapper.find(‘.nums‘).find(‘a:eq(‘+index+‘)‘).addClass(‘active‘).siblings().removeClass(‘active‘);
			wrapper.find(‘.title‘).find(‘a‘).attr(‘href‘, active_a.attr(‘href‘)).text(active_a.attr(‘title‘));

			ul.stop().animate(param, settings.duration*1000, settings.easing, function() {
				active.removeClass(‘active‘);
				if(order_by==‘ASC‘){
					if (active.next().size()){
						active.next().addClass(‘active‘);
					}else{
						order_by = ‘DESC‘;
						active.prev().addClass(‘active‘);
					}
				}else if(order_by==‘DESC‘){
					if (active.prev().size()){
						active.prev().addClass(‘active‘);
					}else{
						order_by = ‘ASC‘;
						active.next().addClass(‘active‘);
					}
				}
			});
			wrapper.data(‘timeid‘, window.setTimeout(start, settings.delay*1000));
		};
		//停止轮播
		var stop = function() {
			window.clearTimeout(wrapper.data(‘timeid‘));
		};
		//鼠标经过事件
		wrapper.hover(function(){
			stop();
		}, function(){
			wrapper.data(‘timeid‘, window.setTimeout(start, settings.delay*1000))
		});
		//首张图片加载完毕后执行初始化
		var imgLoader = new Image();
		imgLoader.onload = function(){
			imgLoader.onload = null;
			init();
		}
		imgLoader.src = firstPic.attr(‘src‘);

	};
})(jQuery);

html

<div id="demo1" class="slideBox">
  <ul class="items">
    <li><a href="http://www.jq22.com/" title="这里是测试标题一"><img src="img/1.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题二"><img src="img/2.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题三"><img src="img/3.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题四"><img src="img/4.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题五"><img src="img/5.jpg"></a></li>
  </ul>
</div>
<h3>二、上下轮播,滚动持续0.3秒,滚动延迟5秒,滚动效果linear,初始焦点第2张,点选按键自动隐藏</h3>
<div id="demo2" class="slideBox">
  <ul class="items">
    <li><a href="http://www.jq22.com/" title="这里是测试标题一"><img src="img/1.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题二"><img src="img/2.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题三"><img src="img/3.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题四"><img src="img/4.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题五"><img src="img/5.jpg"></a></li>
  </ul>
</div>
<h3>三、左右轮播,滚动持续0.3秒,滚动延迟5秒,滚动效果linear,初始焦点第1张,点选按键不隐藏,按键边框半径10px(圆形)</h3>
<div id="demo3" class="slideBox">
  <ul class="items">
    <li><a href="http://www.jq22.com/" title="这里是测试标题一"><img src="img/1.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题二"><img src="img/2.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题三"><img src="img/3.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题四"><img src="img/4.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题五"><img src="img/5.jpg"></a></li>
  </ul>
</div>
<h3>四、隐藏底栏</h3>
<div id="demo4" class="slideBox">
  <ul class="items">
    <li><a href="http://www.jq22.com/" title="这里是测试标题一"><img src="img/1.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题二"><img src="img/2.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题三"><img src="img/3.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题四"><img src="img/4.jpg"></a></li>
    <li><a href="http://www.jq22.com/" title="这里是测试标题五"><img src="img/5.jpg"></a></li>
  </ul>
</div>
时间: 2024-10-13 16:09:23

jquery简单轮播代码的相关文章

jquery图片轮播代码

自己写的轮播代码 来张样式效果图 先贴HTML样式 <body> <div id = "wrap"> <div id="lunbo-img"> <img src="images/lunbo01.jpg" alt="" width="500" height="750"> <img src="images/lunbo02.jpg

jquery 图片轮播 代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

jQuery轻量级京东图片轮播代码等

http://sc.chinaz.com/jiaoben/jiaodiantu.html jQuery轻量级京东图片轮播代码 查看全图点击预览 顶(17)踩(4)报错评论(0)下载地址 更新时间:2016-07-11 09:18 类别:脚本 0 更多相关 jQuery缩略图数字按钮图片切换 所属专题:焦点图代码 脚本简介 jQuery轻量级京东图片轮播代码是一款带左右按钮控制,带缩略图的图片轮播代码.

基于jQuery带进度条全屏图片轮播代码

基于jQuery带进度条全屏图片轮播代码.这是一款基于jQuery实现的oppo手机官网首页带进度条全屏图片轮播特效.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="pic"> <ul> <li style="background: url(images/bg1.jpg) center;"> <img src="images/con1.png"> <

基于jQuery可悬停控制图片轮播代码

基于jQuery可悬停控制图片轮播代码.这是一款可悬停切换全屏轮播jQuery幻灯片.效果图如下: 在线预览   源码下载 实现的代码: <!-- 轮播广告 --> <div id="banner_tabs" class="flexslider"> <ul class="slides"> <li> <a title="" target="_blank"

js最简单焦点图片轮播代码

将下面代码保存为banner.js,在需要显示焦点图的地方调用该js即可. <script type="text/javascript" src="banner.js"></script> 注意:代码中图片路径修改为你自己的图片地址 var widths=725; //焦点图片宽 var w=0; var widthss=widths+w; var heights=295; //焦点图片高 var heightss=heightss+w; v

原生js简单轮播图 代码

在团队带人,突然被人问到轮播图如何实现,进入前端领域有一年多了,但很久没自己写过,一直是用大牛写的插件,今天就写个简单的适合入门者学习的小教程.当然,轮播图的实现原理与设计模式有很多种,我这里讲的是用面向过程函数式编程去实现,相对于面向对象设计模式,代码难免会显得臃肿冗余.但没有面向对象的抽象却很适合新手理解与学习.已经在BAT的同学看到希望少喷点.另外可以多提意见. 轮播图的原理: 一系列的大小相等的图片平铺,利用CSS布局只显示一张图片,其余隐藏.通过计算偏移量利用定时器实现自动播放,或通过

jquery实现轮播插件

这几天用jquery写了两个轮播的插件,功能很简单.第一次尝试写插件,有很多不足的地方,代码如下: 注:图片链接请替换掉,配置信息必须加上图片width和height. <!DOCTYPE html> <html ng-app="myApp"> <head lang="en"> <meta charset="UTF-8"> <link rel="stylesheet" hr

jQuery图片轮播(二)利用构造函数和原型创建对象以实现继承

上一篇文中完成的封装,还存在一个小问题,就是该轮播对象不能在同一页面中重复使用,本文将通过组合使用javascript的构造函数和原型模式创建对象来解决这个问题. 没有看过上一篇文章的朋友可以点此查看上一篇文章 (jQuery图片轮播(一)轮播实现并封装) 首先回顾一下,上文的问题所在,上文中的carsouel对象是采用字面量的方式来定义的,这样carsouel本就是一个实例,想要使用在多处时,这个对象的方法会发生冲突,最终只会执行最后的那一个.而通过采用构造函数的方式来定义对象carsouel