原生js制作自适应页面宽度幻灯片切换效果



45 177 60



特效描述:原生js制作 自适应页面宽度 幻灯片切换效果,原生js制作自适应页面宽度幻灯片切换效果

代码结构

1. 引入CSS

<link type="text/css" href="css/style.css" rel="stylesheet">

2. HTML代码

<div class="index_banner" id="banner_tabs">
	<ul>
		<li><a href="http://www.51qianduan.com/" target="_blank"><img src="images/index_banner1.jpg" width="100%"></a></li>
		<li><a href="http://www.51qianduan.com/" target="_blank"><img src="images/index_banner2.jpg" width="100%"></a></li>      
		<li><a href="http://www.51qianduan.com/" target="_blank"><img src="images/index_banner3.jpg" width="100%"></a></li>    
		<li><a href="http://www.51qianduan.com/" target="_blank"><img src="images/index_banner4.jpg" width="100%"></a></li>
		<li><a href="http://www.51qianduan.com/" target="_blank"><img src="images/index_banner5.jpg" width="100%"></a></li>
		<li><a href="http://www.51qianduan.com/" target="_blank"><img src="images/index_banner6.jpg" width="100%"></a></li>
	</ul>
	<!--此处的img是用来占位的,在实际使用中,可以另外制作一张全空的图片-->
	<img style="visibility:hidden;" src="images/index_banner1.jpg" width="100%">
	<cite>
		<span class="cur">1</span>
		<span>2</span>
		<span>3</span>
		<span>4</span>
		<span>5</span>
		<span>6</span>
	</cite>
	<div class="clear"></div>
</div>
<script type="text/javascript">
(function(){
	if(!Function.prototype.bind){
		Function.prototype.bind = function(obj){
			var owner = this,args = Array.prototype.slice.call(arguments),callobj = Array.prototype.shift.call(args);
			return function(e){e=e||top.window.event||window.event;owner.apply(callobj,args.concat([e]));};
		};
	}
})();
var banner_tabs = function(id){
	this.ctn = document.getElementById(id);
	this.adLis = null;
	this.btns = null;
	this.animStep = 0.2;//动画速度0.1~0.9
	this.switchSpeed = 6;//自动播放间隔(s)
	this.defOpacity = 1;
	this.tmpOpacity = 1;
	this.crtIndex = 0;
	this.crtLi = null;
	this.adLength = 0;
	this.timerAnim = null;
	this.timerSwitch = null;
	this.init();
};
banner_tabs.prototype = {
	fnAnim:function(toIndex){
		if(this.timerAnim){window.clearTimeout(this.timerAnim);}
		if(this.tmpOpacity <= 0){
			this.crtLi.style.opacity = this.tmpOpacity = this.defOpacity;
			this.crtLi.style.filter = 'Alpha(Opacity=' + this.defOpacity*100 + ')';
			this.crtLi.style.zIndex = 0;
			this.crtIndex = toIndex;
			return;
		}
		this.crtLi.style.opacity = this.tmpOpacity = this.tmpOpacity - this.animStep;
		this.crtLi.style.filter = 'Alpha(Opacity=' + this.tmpOpacity*100 + ')';
		this.timerAnim = window.setTimeout(this.fnAnim.bind(this,toIndex),50);
	},
	fnNextIndex:function(){
		return (this.crtIndex >= this.adLength-1)?0:this.crtIndex+1;
	},
	fnSwitch:function(toIndex){
		if(this.crtIndex==toIndex){return;}
		this.crtLi = this.adLis[this.crtIndex];
		for(var i=0;i<this.adLength;i++){
			this.adLis[i].style.zIndex = 0;
		}
		this.crtLi.style.zIndex = 2;
		this.adLis[toIndex].style.zIndex = 1;
		for(var i=0;i<this.adLength;i++){
			this.btns[i].className = '';
		}
		this.btns[toIndex].className = 'cur'
		this.fnAnim(toIndex);
	},
	fnAutoPlay:function(){
		this.fnSwitch(this.fnNextIndex());
	},
	fnPlay:function(){
		this.timerSwitch = window.setInterval(this.fnAutoPlay.bind(this),this.switchSpeed*1000);
	},
	fnStopPlay:function(){
		window.clearTimeout(this.timerSwitch);
	},
	init:function(){
		this.adLis = this.ctn.getElementsByTagName('li');
		this.btns = this.ctn.getElementsByTagName('cite')[0].getElementsByTagName('span');
		this.adLength = this.adLis.length;
		for(var i=0,l=this.btns.length;i<l;i++){
			with({i:i}){
				this.btns[i].index = i;
				this.btns[i].onclick = this.fnSwitch.bind(this,i);
				this.btns[i].onclick = this.fnSwitch.bind(this,i);
			}
		}
		this.adLis[this.crtIndex].style.zIndex = 2;
		this.fnPlay();
		this.ctn.onmouseover = this.fnStopPlay.bind(this);
		this.ctn.onmouseout = this.fnPlay.bind(this);
	}
};
var player1 = new banner_tabs('banner_tabs');
</script>



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册


热门标签: flash焦点图 flash幻灯片 flashbanner flash图片轮播 滑动选项卡 滑动切换 滚动切换 滚动条切换 滑动手风琴 选项卡切换 选项卡 切换 tab切换 页面切换 选项卡插件 切换插件 滑动星星打分 渐隐切换 淡出淡进 淡出 淡进 焦点图 幻灯片 轮播图 bar焦点图 其他 自适应页面大小 图片淡出淡进 图片淡出 图片淡进 图片切换 图片选项卡 图标选项卡 纯图片轮播 图片轮播 全屏焦点图 选项卡自动切换

×
×

注册

官方QQ群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到