jQuery响应式图片无缝切换代码

版权:原创 更新时间:1年以上
[该文章底部包含文件资源,可根据自己情况,决定是否下载资源使用,时间>金钱,如有需要,立即查看资源]

以下是 jQuery响应式图片无缝切换代码 的示例演示效果:

当前平台(PC电脑)
  • 平台:

部分效果截图:

jQuery响应式图片无缝切换代码

HTML代码(index.html):

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery响应式图片无缝切换代码</title>
<style type="text/css">
	*{
			margin: 0;
			padding: 0;
			list-style-type: none;
		}
		.banner{
			width: 100%;
			/*height: 560px;*/
			/*background: black;*/
			/*子绝父相*/
			position: relative;
			/*超出部分全部隐藏,解决横向滚动条*/
			overflow: hidden;
		}
		.banner ul{
			position: absolute;
		}
		.banner ul li{
			/*这个100%是相对于父盒子的(会把父盒子的宽度继承过来,如父盒子300%,这这里的100%就会相当于300%)*/
			width: 100%;
			height: 560px;
			float: left;
			background:  no-repeat center center;
		}
		/*.banner ul li:nth-child(1){*/
			/*background: url('./1.jpg') no-repeat center center;*/
		/*}*/
		/*.banner ul li:nth-child(2){*/
			/*background: url('./2.jpg') no-repeat center center;*/
		/*}*/
		/*.banner ul li:nth-child(3){*/
			/*background: url('./3.jpg') no-repeat center center;*/
		/*}*/
		.banner ol{
			/*width: 60px;*/
			height: 20px;
			background: rgba(0,0,0,0.5);
			position: absolute;
			left:50%;
			/*margin-left: -40px;*/
			bottom: 30px;
			padding: 0 10px;
			border-radius: 10px;
		}
		.banner ol li{
			width: 10px;
			height: 10px;
			float: left;
			margin: 5px 5px;
			background: rgba(255,255,255,0.5);
			border-radius: 50%;
			cursor: pointer;
		}
		.banner ol .current{
			background: rgba(255,255,255,1);
		}
		.banner i{
			width: 58px;
			height: 120px;
			position: absolute;
			top: 50%;
			margin-top: -60px;
			cursor: pointer;
			border-radius: 5px;
			display: none;
		}
		.banner .left{
			left: 60px;
			background: url('img/left_right.png') no-repeat 0 0px;
		}
		.banner .right{
			right: 60px;
			background: url('img/left_right.png') no-repeat 0px -120px;
		}
		.banner .left:hover , .banner .right:hover{
			background-color: rgba(0, 0, 0, 0.31);
		}
</style>

</head>
<body>

<div class="banner">
	<ul></ul>
	<ol></ol>
	<i class="left"></i><i class="right"></i>
</div>

<script src="js/jquery-1.11.0.min.js" type="text/javascript"></script>
<script type="text/javascript">
	$(function(){ //页面加载完毕才执行

		//=========设置参数==========
		//图片统一高度:
		var images_height = '560px';
		//图片路径/链接(数组形式):
		var images_url = [
			'img/1.jpg',
			'img/2.jpg',
			'img/3.jpg'
		];
		var images_count = images_url.length;
		//console.log(images_count);

		//创建节点
		//图片列表节点
		for(var j=0;j<images_count+1;j++){
			$('.banner ul').append('<li></li>')
		}
		//轮播圆点按钮节点
		for(var j=0;j<images_count;j++){
			if(j==0){
				$('.banner ol').append('<li class="current"></li>')
			}else{
				$('.banner ol').append('<li></li>')
			}
		}

		//载入图片
		$('.banner ul li').css('background-image','url('+images_url[0]+')');
		$.each(images_url,function(key,value){
			$('.banner ul li').eq(key).css('background-image','url('+value+')');
		});

		$('.banner').css('height',images_height);

		$('.banner ul').css('width',(images_count+1)*100+'%');

		$('.banner ol').css('width',images_count*20+'px');
		$('.banner ol').css('margin-left',-images_count*20*0.5-10+'px');

		//=========================

		var num = 0;
		//获取窗口宽度
		var window_width = $(window).width();
		$(window).resize(function(){
			window_width = $(window).width();
			$('.banner ul li').css({width:window_width});
			clearInterval(timer);
			nextPlay();
			timer = setInterval(nextPlay,2000);
		});
		//console.log(window_width);
		$('.banner ul li').width(window_width);
		//轮播圆点
		$('.banner ol li').mouseover(function(){//用hover的话会有两个事件(鼠标进入和离开)
			$(this).addClass('current').siblings().removeClass('current');
			//第一张图: 0 * window_width
			//第二张图: 1 * window_width
			//第三张图: 2 * window_width
			//获取当前编号
			var i = $(this).index();
			//console.log(i);
			$('.banner ul').stop().animate({left:-i*window_width},500);
			num = i;
		});
		//自动播放
		var timer = null;
		function prevPlay(){
			num--;
			if(num<0){
				//悄悄把图片跳到最后一张图(复制页,与第一张图相同),然后做出图片播放动画,left参数是定位而不是移动的长度
				$('.banner ul').css({left:-window_width*images_count}).stop().animate({left:-window_width*(images_count-1)},500);
				num=images_count-1;
			}else{
				//console.log(num);
				$('.banner ul').stop().animate({left:-num*window_width},500);
			}
			if(num==images_count-1){
				$('.banner ol li').eq(images_count-1).addClass('current').siblings().removeClass('current');
			}else{
				$('.banner ol li').eq(num).addClass('current').siblings().removeClass('current');

			}
		}
		function nextPlay(){
			num++;
			if(num>images_count){
				//播放到最后一张(复制页)后,悄悄地把图片跳到第一张,因为和第一张相同,所以难以发觉,
				$('.banner ul').css({left:0}).stop().animate({left:-window_width},500);
				//css({left:0})是直接悄悄改变位置,animate({left:-window_width},500)是做出移动动画
				//随后要把指针指向第二张图片,表示已经播放至第二张了。
				num=1;
			}else{
				//在最后面加入一张和第一张相同的图片,如果播放到最后一张,继续往下播,悄悄回到第一张(肉眼看不见),从第一张播放到第二张
				//console.log(num);
				$('.banner ul').stop().animate({left:-num*window_width},500);
			}
			if(num==images_count){
				$('.banner ol li').eq(0).addClass('current').siblings().removeClass('current');
			}else{
				$('.banner ol li').eq(num).addClass('current').siblings().removeClass('current');

			}
		}
		timer = setInterval(nextPlay,2000);
		//鼠标经过banner,停止定时器,离开则继续播放
		$('.banner').mouseenter(function(){
			clearInterval(timer);
			//左右箭头显示(淡入)
			$('.banner i').fadeIn();
		}).mouseleave(function(){
			timer = setInterval(nextPlay,2000);
			//左右箭头隐藏(淡出)
			$('.banner i').fadeOut();
		});
		//播放下一张
		$('.banner .right').click(function(){
			nextPlay();
		});
		//返回上一张
		$('.banner .left').click(function(){
			prevPlay();
		});
	});
</script>
</body>
</html>





附件:下载该文件资源,减少时间成本(增值服务)
留言
该资源可下载
File Source
.rar
291.48 KB
Html Js 图片切换触摸3
最新结算
股权转让协议意向书模板
类型: .docx 金额: CNY 2.23¥ 状态: 待结算 详细>
股权转让协议意向书模板
类型: .docx 金额: CNY 0.28¥ 状态: 待结算 详细>
CSS3图片向上3D翻转渐隐消失特效
类型: .rar 金额: CNY 0.29¥ 状态: 待结算 详细>
CSS3图片向上3D翻转渐隐消失特效
类型: .rar 金额: CNY 2.31¥ 状态: 待结算 详细>
.net c# 将金额转人名币大写金额
类型: .rar 金额: CNY 2.39¥ 状态: 待结算 详细>
.net c# 将金额转人名币大写金额
类型: .rar 金额: CNY 0.3¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 2.23¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 0.28¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 2.23¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 0.28¥ 状态: 待结算 详细>
我们力求给您提供有用的文章,再此基础上,会附加营收资源,不做任何广告,让平台可以更好发展 若您发现您的权利被侵害,或使用了您的版权,请发邮件联系 sunlifel@foxmail.com ggbig觉得 : 不提供源码的文章不是好文章
合作伙伴
联系我们
  • QQ:21499807
  • 邮箱:sunlifel@foxmail.com
  • QQ扫一扫加QQ
    QQ扫一扫
Copyright 2023-2024 ggbig.com·皖ICP备2023004211号-1
打赏文章