• JQuery中Table标签页和无缝滚动


    HTML代码:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title></title>
    		<link rel="stylesheet" href="css/tab1.css" />
    		<script src="js/jquery.js"></script>
    		<script src="js/tab1.js "></script>
    	</head>
    	<body>
    		
    		<div class="tabTitle">
    			<ul>
    				<li class="current0">xhtml</li>
    				<li>css</li>
    				<li>jquery</li>
    			</ul>
    		</div>
    		
    		<div class="tabContent">
    			<div>xhtml的内容</div>
    			<div class="hide">css的内容</div>
    			<div class="hide">jquery的内容</div>
    		</div>
    	</body>
    </html>
    

     CSS的代码:

    *{
    	padding: 0;
    	margin: 0;
    }
    li{
    	list-style-type: none;
    }
    body{
    	margin: 50px;
    }
    .hide{
    	display: none;
    }
    .tabTitle ul{
    	overflow: hidden;
    	_height:1px;
    }
    .tabTitle ul li{
    	float: left;
    	border: 1px solid #abcdef;
    	border-bottom: none;
    	height: 30px;
    	line-height: 30px;
    	padding:0 15px;
    	margin-right: 3px;
    	cursor: pointer;
    }
    .current0{
    	background: #abcdef;
    	color: #FF6600;
    }
    .current1{
    	background: red;
    	color: teal;
    }
    .current2{
    	background: green;
    	color: yellow;
    }
    .tabContent div{
    	border: 1px solid #f60;
    	 300px;
    	height: 250px;
    	padding: 15;
    }
    

     js代码:

    $(function(){
    	var ali=$('.tabTitle ul li');
    	
    	var aDiv=$('.tabContent div');
    	var timeId=null;
    	ali.mouseover(function(){
    		//this 定义成匿名函数
    		var _this=$(this);
    		//$(this)方法属于哪个元素,$(this)就是指哪个元素
    		//siblings 除了选中的兄弟元素
    		//setTimeout(): 延迟某一段代码的执行
    		timeId=setTimeout(function(){
    			//_this.addClass('current').siblings().removeClass('current');
    			_this.addClass(function(){
    				return 'current'+_this.index();
    			}).siblings().removeClass();
    		
    		var index=_this.index();
    		
    		//如果想用一组元素控制另外一组元素的显示或者隐藏,需要用到索引
    		aDiv.eq(index).show().siblings().hide();
    		},500);
    		//鼠标移出时清除定时器
    	}).mouseout(function(){
    		//clearTimeout 的作用是清除定时器
    		clearTimeout(timeId);
    	});
    });
    

    效果:

    无缝滚动HTML:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title></title>
    		<link rel="stylesheet" href="css/hider.css" />
    		<script src="js/jquery.js"></script>
    		<script src="js/slider.js"></script>
    	</head>
    	<body>
    		<a href="javascript:;" class="goLeft">向左走</a>
    	    <a href="javascript:;" class="goRight">向右走</a>
    	    
    		<div class="warp">
    			<ul>
    				<li><img src="img/1.jpg" alt=""></li>
    				<li><img src="img/2.jpg" alt=""></li>
    				<li><img src="img/3.jpg" alt=""></li>
    				<li><img src="img/4.jpg" alt=""></li>
    				<li><img src="img/5.jpg" alt=""></li>
    			</ul>
    			
    		</div>
    	</body>
    </html>
    

     CSS代码:

    *{
    	padding: 0;
    	margin: 0;
    }
    li{
    	list-style-type:none;
    }
    body{
    	margin: 50px;
    }
    .warp{
    	border: 3px solid #f00;
    	 800px;
    	height: 200px;
        position: relative; 
        overflow: hidden;
    }
    .warp ul{
    	overflow: hidden;
    	 1600px;
    	position: absolute;
    	left: 0;
    	top:0;
    	_height:1px;
    }
    .warp ul li{
    	float: left;
    }
    

     js代码:

    //如果想使一个元素运动起来,一般情况下这个元素必须要具有与position属性
    $(function(){
    	var oul=$('.warp ul');
    	var oulHtml=oul.html();
    	oul.html(oulHtml+oulHtml);
    	var timeId=null;
    	
    	var ali=$('.warp ul li');
    	//或缺li的寬度
    	var aliWidth=ali.eq(0).width();
    	//或缺大小
    	var aliSize=ali.size();
    	var ulWidth=aliWidth*aliSize;
    	oul.width(ulWidth);
    	
    	var speed=2;
    	
    	
    	function slider(){
    		if(speed<0)
    		{
    			if(oul.css('left')==-ulWidth/2+'px')
    			{
    			oul.css('left',0);
    		    }
    		        oul.css('left','+=-2px'); 
    		}
    		
    		if(speed>0){
    			if(oul.css('left')=='0px')
    			{
    			   oul.css('left',-ulWidth/2+'px');
    		    }
    			oul.css('left','+='+speed+'px');
    		}
    		
    		
    	}
    	
    	//setInterval()函数的作用,每个一段时间执行该函数的代码
    	timeId=setInterval(slider,30);
    	 
    	 $('.warp').mouseover(function(){
    	 	//clearInterval() 清除定时器
    	 	clearInterval(timeId);
    	 });
    	 $('.warp').mouseout(function(){
    	 	timeId=setInterval(slider,30);
    	 });
    	 
    	 $('.goLeft').click(function(){
    	 	speed=-2;
    	 });
    	 $('.goRight').click(function(){
    	 	speed=+2;
    	 }); 
    });
    

     轮播图:

    HTML代码:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title>圖片輪播</title>
    		<link rel="stylesheet" href="css/slider.css"/>
    		<script src="js/Jquery.js"></script>
    		<script src="js/silder.js"></script>
    	</head>
    	<body>
    		<div class="wrap">
    			<ul>
    				<li><img src="img/1.jpg" alt="111111"></li>
    				<li><img src="img/2.jpg" alt="222222"></li>
    				<li><img src="img/3.jpg" alt="333333"></li>
    				<li><img src="img/4.jpg" alt="444444"></li>
    			</ul>
    			<ol>
    				<li class="current">1</li>
    				<li>2</li>
    				<li>3</li>
    				<li>4</li>
    			</ol>
    			<p class="introduce"></p>
    			<span>111111</span>
    		</div>
    	</body>
    </html>
    

    css:

    *{
    	padding: 0;
    	margin: 0;
    }
    li{
    	list-style-type: none;
    }
    body{
    	margin: 50px;
    }
    .wrap{
    	 500px;
    	height: 350px;
    	border: 3px solid #f00;
    	position: relative;
    	overflow: hidden;
    }
    .wrap ul{
    	 2000px;
    	position: absolute;
    	left: 0;
    	top:0; 
    }
    
    .wrap ul li{
    	float: left;
    	 500px;
    }
    .wrap ol{
    	  position: absolute;
    	  bottom: 10px;
    	  right: 10px;
    }
    .wrap ol li{
    	float: left;
    	 16px;
    	height: 16px;
    	line-height: 16px;
    	text-align: center;
    	border:1px solid #fc0;
    	background: #000;
    	color: #fff;
    	margin-right: 3px;
    	cursor: pointer;
    }
    .wrap ol li.current{
    	background: #fff;
        color: #000;
    }
    
    .wrap .introduce{
    	height: 30px;
    	line-height: 30px;
    	 400px;
    	background: rgba(0,0,0,0.5);
    	color: #fff;
    	position:absolute;
    	bottom: 10px;
    	left: 10;
    	/*opacity: 0.5;
    	filter: alpha(opacity=50);*/
    }
    

     JS:

    $(function(){
    	var oul=$('.wrap ul');
    	var ali=$('.wrap ul li')
    	var numli=$('.wrap ol li');
    	var aliWidth=$('.wrap ul li').eq(0).width();
    	var _now=0;  //控制数字样式的计时器
    	var _now2=0;  //控制图片运动距离的计数器
    	var timeId;
    	var aimg=$('.wrap ul img');
    	var op=$('.wrap p');
    	
    	numli.click(function(){
    		//获取索引
    		var index=$(this).index();
    		//同步
    		_now=index;
    		_now2=index;
    	 var imgAlt=	aimg.eq(_now).attr('alt');
    	    op.html(imgAlt);
    		$(this).addClass('current').siblings().removeClass();
    		oul.animate({'left':-aliWidth*index},500);
    		
    		
    		
    	});
    	
    	//图片运动的函数  无返回值
    	function slider(){
    		if(_now==numli.size()-1){
    			ali.eq(0).css({
    				'position':'relative',
    				'left':oul.width()
    			});
    			_now=0;
    		}
    		else{
    			_now++; 
    		}
    		_now2++;
    		
    		numli.eq(_now).addClass('current').siblings().removeClass();
    	    var imgAlt=	aimg.eq(_now).attr('alt');
    	    op.html(imgAlt);
    		oul.animate({'left':-aliWidth*_now2},500,function(){
    			if(_now==0){
    				ali.eq(0).css('position','static');
    				oul.css('left',0);
    				_now2=0;  
    				
    		}
    		});
    		
    		
    	}
    	
    	timeId=setInterval(slider,1500);
    	
    
    	
    	/*$('.wrap').mouseover(function(){
    		clearInterval(timeId);
    	});
    	$('.wrap').mouseout(function(){
    		timeId=setInterval(slider,1500);
    	});*/
    	
    	$('.wrap').hover(function(){
    		clearInterval(timeId);
    	},function(){
    		timeId=setInterval(slider,1500);
    	});
    });
    

     效果:

  • 相关阅读:
    取石子(二)巴仕博弈+尼姆博弈
    hdu2430Beans(单调队列)
    LCD: 2D-3D匹配算法
    如何选择视觉CV光源颜色
    gpgpu-sim卡分配程序设计实例分析
    PointRCNN: 点云的3D目标生成与检测
    3D点云重建原理及Pytorch实现
    GPU加速计算
    红外传感器技术
    Linux架构思维导图
  • 原文地址:https://www.cnblogs.com/sunliyuan/p/6368652.html
Copyright © 2020-2023  润新知