js 幻灯片
2016-12-26 13:54
218 查看
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style>
*{ margin: 0; padding: 0;}
ul,li{ list-style-type: none;}
.slider,.slider img{ width:500px; height:500px;}
.slider{ position: relative; overflow: hidden;}
.slider ul{ position: absolute; top:0; left: 0; }
.slider ul li{float:left;}
.slider ol{ position: absolute; bottom: 5px;left:0; width:100%; text-align: center;}
.slider ol li{width:20px; height:20px;display: inline-block; text-indent: -9999px; border-radius: 50%; background: #fff; opacity: 0.8; margin: 0 2px; cursor: pointer;}
.slider ol li.cursor{ box-shadow: 0 0 5px #abcdef; background: #abcdef; opacity: 1;}
</style>
</head>
<body>
<div class="slider">
<ul>
<li><img src="01.png"></li>
<li><img src="02.jpg"></li>
<li><img src="01.png"></li>
<li><img src="02.jpg"></li>
<li><img src="01.png"></li>
<li><img src="02.jpg"></li>
</ul>
</div>
<script type="text/javascript">
function Slider(){
this.slider=document.getElementsByClassName("slider")[0];
this.time=2000;
this.objul=this.slider.childNodes[1];
this.elem_child = this.objul.childNodes;
this.Sliderwidth=this.slider.offsetWidth;
this.num=slider_lenght(this.objul);
this.objul.style.width=this.num*this.Sliderwidth+"px";
//添加元素
var obj=document.createElement("ol");
for(var i=0;i<this.num;i++){
objli=document.createElement("li");
objli.setAttribute("onclick","clickli(this,"+i+")");
obj.appendChild(objli);
}
this.slider.appendChild(obj);
this.objol=this.slider.childNodes[3];
this.objol.childNodes[0].setAttribute("class","cursor");
this.slidermove=settimemove(this.objul,this.num,this.time,this.Sliderwidth);
}
function clickli(element,index){
var inum=element.parentNode.childNodes.length;
for(var i=0;i<inum;i++){
element.parentNode.childNodes[i].removeAttribute("class");
}
element.setAttribute("class","cursor");
var objul=element.parentNode.parentNode.childNodes[1];
var Sliderwidth=element.parentNode.parentNode.offsetWidth;
objul.style.left=(-index*Sliderwidth)+"px";
//objul.style.transition="all "+(time/2000)+"s ease";
}
function settimemove(objul,num,time,Sliderwidth){
var objol=objul.parentNode.childNodes[3];
var i=0;
var timeId=null;
timeId=setInterval(mt_silder,time);
objul.parentNode.onmouseover=function(){
clearInterval(timeId);
}
objul.parentNode.onmouseout=function(){
timeId=setInterval(mt_silder,time);
}
function mt_silder(){
if(i>=(num-1)){
i=0;
}else{
i++;
}
var inum=objol.childNodes.length;
for(var is=0;is<inum;is++){
objol.childNodes[is].removeAttribute("class");
}
objol.childNodes[i].setAttribute("class","cursor");
objul.style.left=(-i*Sliderwidth)+"px";
objul.style.transition="all "+(time/2000)+"s ease";
}
}
function slider_lenght(obj){
var elem_child = obj.childNodes;
var num=0;
for(var i =0 ; i<elem_child.length;i++){
if(elem_child[i].nodeName!="#text"){
num++;
}
}
return num;
}
var s=new Slider();
s.slidermove;
</script>
</body>
</html>
相关文章推荐
- JS+FLASH幻灯片播放图片脚本,整理了代码,使得调用更加方便!
- Flash和JS实现的图片幻灯片切换特效
- 超级实用且不花哨的js代码大全 (六) ----代码判断,幻灯片播放器,广告效果
- 超级实用且不花哨js代码大全(七)广告JS代码效果大全+js幻灯片播放器
- JS+Flash实现图片切换幻灯片效果
- js幻灯片播放器
- JS幻灯片
- [导入]CSS+JS实现的幻灯片效果
- 一般网站首页的flash幻灯片中用到的js代码
- JS实现图片幻灯片效果
- js 简单幻灯片
- JS图片幻灯片效果与数据库链接的动态(两种)
- 超级实用且不花哨的js代码大全 (六) ----代码判断,幻灯片播放器,广告效果
- Flash和JS实现的图片幻灯片切换特效
- JS实现图片幻灯片效果
- JS实现图片幻灯片效果
- 各大门户网站Flash和JS实现的图片幻灯片切换特效代码文件下载
- 纯JS实现图片幻灯片效果,兼容IE7,firefox
- js打造图片幻灯片效果——多幅图片淡入淡出切换
- 网站常用的一种JS的图片幻灯片特效代码