﻿sl={
  tarClass:"slides", //需转换的目标类或id
  dynslidesClass:"dynslides",  //支持js动态类
  showClass:"show",  //给li加上show类
  preClass:"pre",  //第一张隐藏按钮
  preoffClass:"off",  //第一张图片隐藏向前按钮
  nextClass:"next", //最后一张隐藏按钮
  nextoffClass:"nextoff", //最后一张图片隐藏向后按钮
  preLabel:"<img src='images/prev.png' alt='上一张' />",
  nextLabel:"<img src='images/next.png' alt='下一张' />",
  
  
    init:function(){
	  if(!document.getElementById || !document.createTextNode) {return;}
	  var uls = document.getElementsByTagName("ul");
	  for(var i = 0 ; i<uls.length ;i++ ){
		  if(!DOMhelp.cssjs("check",uls[i],sl.tarClass)) continue;
		  DOMhelp.cssjs("add",uls[i],sl.dynslidesClass);
		  uls[i].currentSlide = 0;
		  sl.initSlideShow(uls[i]);
	   }
	  },
    initSlideShow:function(o){
	   var pBefore = document.createElement("span");
	   DOMhelp.cssjs("add",pBefore,sl.preoffClass);
	   o.insertBefore(pBefore,o.firstChild);
	   o.pre = DOMhelp.createLink("#","");
	   o.pre.innerHTML = sl.preLabel;
	   pBefore.appendChild(o.pre);
	   DOMhelp.addEvent(o.pre,"click",sl.slideShow,false);
	   var pAfter = document.createElement("span");
	   o.appendChild(pAfter);
	   DOMhelp.cssjs("add",pAfter,sl.nextClass);
	   o.next = DOMhelp.createLink("#","");
	   o.next.innerHTML = sl.nextLabel;
	   pAfter.appendChild(o.next);
	   DOMhelp.addEvent(o.next,"click",sl.slideShow,false);
	   var temp = o.getElementsByTagName("li")[o.currentSlide];
	   DOMhelp.cssjs("add",temp,sl.showClass);
      },
    slideShow:function(e){
		var action;
		var t = DOMhelp.getTarget(e);
		while(t.nodeName.toLowerCase() != "a" && t.nodeName.toLowerCase() != "body"){
			t = t.parentNode
			}
		var parentList = t.parentNode.parentNode;
		var count = parentList.currentSlide;
		var photoCount = parentList.getElementsByTagName("li").length-1;
		var photo  = parentList.getElementsByTagName("li")[count];
		DOMhelp.cssjs("remove",photo,sl.showClass);
		count = (t == parentList.next) ? count+1 : count-1;
		if(count < 0 ){count =0;}
		if(count > photoCount){count = photoCount}
		action = (count > 0) ? "add" : "remove";
		DOMhelp.cssjs(action,parentList.pre.parentNode,sl.preClass);
		action = (count < photoCount) ? "remove" : "add";
		DOMhelp.cssjs(action,parentList.next.parentNode,sl.nextoffClass);
		photo = parentList.getElementsByTagName("li")[count];
		parentList.currentSlide = count;
		DOMhelp.cssjs("add",photo,sl.showClass);
		DOMhelp.cancelClick(e);
		}


}
DOMhelp.addEvent(window,'load',sl.init,false);

