【导读】焦点图在网站中应用并不少见。该焦点图将js控置逻辑与UI部份分离,有兴趣的朋友可以试试.
【示例1】
【示例2】
【示例3】
【说明】
   示例1与示例2为同一组件(animation1.js),示例3的切换模示与之前不同,因此在之前的基础上修改为animation2.js.两图均支持自动切换模式.
【参数说明】
公共部份:
   scrollcontrol:滚动的容器(元素id) .
   width:横向滚动一屏的距离;
   height:纵向滚动一屏的距离;
   isLR:标识横向滚动or纵向滚动(lr|tb)
   mode:滚动模式(slow[减速]|fast[加速]|stand[恒速])
   freq:setInterval的第二个参数,设置该参数控置移动时的频率.
   rv:与mode协同工作.能够影响滚动速度,不同的mode,设置rv的意义不一样,可不用设置.
   auto:标识是否自动滚动
   autotime:自动滚动间隔,毫秒为单为,默认值3000  
animation1.js 其它参数:
defindex:第一次显示焦点图的索引号,默认0
smallbtn:一个(元素)数组:[btn1,btn2,btn3],用来切换不同的页
cls:(string或function),如果是string,鼠标经过smallbtn中按钮时,会将该字符串做为样式名附加在(鼠标经过的)按钮上.如果是一个function,鼠标经过smallbtn中按钮时,会触发该函数.并且传入两个整型参数(lstIndex,curIndex),提供外围扩展.
start:一个事件,当开始切换焦点时触发.有两个参数(lstIndex,curIndex)
stop:一个事件,当结束滚动时触发,与start参数一致.
animation2.js 其它参数:
subcontrol:该容器是滚动内容的父容器,它应该能够反应出滚动内容的真实宽度或高度(元素id) .
leftbtn:控置往左移动的按钮(元素id)
rightbtn:控置往右移动的按钮(元素id)
beforefirst:一个事件,滚动到最左端时触发,有一个布尔类型参数(auto),标识是自动滚动,还是点击触发.
afterend:一个事件,滚动到最右边触发,参数与beforefirst一致.
【工作原理】
无论左右滚动,或者上下滚动,都是通过scrollLeft,scrollTop控置的.因此请确保 scrollcontrol 有足够的滚动空间.
【示例代码】
结构部份
<div class = "center" id = "appliymain"><!--js控置该容器的scrollLeft,scrollTop实现滚动--> <div style = "width:9999px" ><!--该部份用来撑足空间--> <div class = "content" id = "subcontent"> <!--滚动内容部份--> </div> </div> </div>
调用代码
图1,2调用
slide1({
	length:5
	,scrollcontrol:"paipaimain"
	,width:470
	,height:205
	,isLR:"lr"
	,cls:"hover"
	,mode:"slow"
	,rv:1
	,freq:15
	,smallbtn:$(".paipai .nav li").get()
})
图3调用
slide2({
	scrollcontrol:"appliymain"
	,subcontrol:"subcontent"
	,width:550
	,auto:true
	,height:75
	,isLR:"lr"
	,mode:"slow"
	,rv:1
	,leftbtn:"applyleft"
	,rightbtn:"applyright"
	,freq:15
});
点此下载完整示例
                    
                





 




 
 
  
 posted on 
                
            
        
浙公网安备 33010602011771号