javascript实现焦点滚动图效果 具体方法

所属分类: 网络编程 / JavaScript 阅读数: 1799
收藏 0 赞 0 分享

前台代码:

复制代码 代码如下:

<div class="sub_box"> 
                       <div id="p-select" class="sub_nav"> 
                           <div class="sub_no" id="bd1lfsj"> 
                               <ul> 
                                   <li class="show">1</li> 
                                   <li class="">2</li> 
                                   <li class="">3</li> 
                                   <li class="">4</li> 
                                   <li class="">5</li> 
                                   <li class="">6</li> 
                                   <li class="">7</li> 
                               </ul> 
                           </div> 
                       </div> 
                       <div id="bd1lfimg"> 
                           <div> 
                               <dl class="show"> 
                               </dl> 
                               <asp:Repeater ID="repTopPicture" runat="server"> 
                                   <ItemTemplate> 
                                       <dl class=""> 
                                           <dt><a href=""> 
                                               <img src='<%#Eval("ImageUrl")%>' /></a></dt> 
                                       </dl> 
                                   </ItemTemplate> 
                               </asp:Repeater> 
                           </div> 
                       </div> 
                   </div> 
                   <script type="text/javascript">                        movec();</script> 

javascript代码:

复制代码 代码如下:

//选择器  
function $a(id,tag){var re=(id&&typeof id!="string")?id:document.getElementById(id);if(!tag){return re;}else{return re.getElementsByTagName(tag);}} 

//焦点滚动图 点击移动  
function movec() 

    var o=$a("bd1lfimg",""); 
    var oli=$a("bd1lfimg","dl"); 
    var oliw=oli[0].offsetWidth; //每次移动的宽度     
    var ow=o.offsetWidth-2; 
    var dnow=0; //当前位置    
    var olf=oliw-(ow-oliw+10)/2; 
        o["scrollLeft"]=olf+(dnow*oliw); 
    var rqbd=$a("bd1lfsj","ul")[0]; 
    var extime; 

    <!--for(var i=1;i<oli.length;i++){rqbd.innerHTML+="<li>"+i+"</li>";}--> 
    var rq=$a("bd1lfsj","li"); 
    for(var i=0;i<rq.length;i++){reg(i);}; 
    oli[dnow].className=rq[dnow].className="show"; 
    var wwww=setInterval(uu,2000); 

    function reg(i){rq[i].onclick=function(){oli[dnow].className=rq[dnow].className="";dnow=i;oli[dnow].className=rq[dnow].className="show";mv();}} 
    function mv(){clearInterval(extime);clearInterval(wwww);extime=setInterval(bc,15);wwww=setInterval(uu,8000);} 
    function bc() 
    { 
        var ns=((dnow*oliw+olf)-o["scrollLeft"]); 
        var v=ns>0?Math.ceil(ns/10):Math.floor(ns/10); 
        o["scrollLeft"]+=v;if(v==0){clearInterval(extime);oli[dnow].className=rq[dnow].className="show";v=null;} 
    } 
    function uu() 
    { 
        if(dnow<oli.length-2) 
        { 
            oli[dnow].className=rq[dnow].className=""; 
            dnow++; 
            oli[dnow].className=rq[dnow].className="show"; 
        } 
        else{oli[dnow].className=rq[dnow].className="";dnow=0;oli[dnow].className=rq[dnow].className="show";} 
        mv(); 
    } 
    o.onmouseover=function(){clearInterval(wwww);} 
    o.onmouseout=function(){extime=setInterval(bc,15);wwww=setInterval(uu,8000);} 

更多精彩内容其他人还在看

jQuery LigerUI 使用教程表格篇(1)

ligerGrid是ligerui系列插件的核心控件,用户可以快速地创建一个美观,而且功能强大的表格,支持排序、分页、多表头、固定列等等
收藏 0 赞 0 分享

JavaScript中常用的运算符小结

JavaScript中常用的运算符小结,需要的朋友可以参考下。
收藏 0 赞 0 分享

深入理解JavaScript系列(13) This? Yes,this!

在这篇文章里,我们将讨论跟执行上下文直接相关的更多细节。讨论的主题就是this关键字。实践证明,这个主题很难,在不同执行上下文中this的确定经常会发生问题
收藏 0 赞 0 分享

javascript (用setTimeout而非setInterval)

javascript (用setTimeout而非setInterval)如果用setInterval 可能出现 下次调用会在前一次调用前调用
收藏 0 赞 0 分享

JavaScript中两个感叹号的作用说明

用两个感叹号的作用就在于,如果明确设置了o中flag的值(非null/undefined/0""/等值),自然test就会取跟o.flag一样的值;如果没有设置,test就会默认为false,而不是null或undefined
收藏 0 赞 0 分享

javascript写的简单的计算器,内容很多,方法实用,推荐

最近用javascript写了一个简单的计算器,自己测试感觉还好,代码都给了注释,非常不错,推荐大家学习。
收藏 0 赞 0 分享

js的表单操作 简单计算器

javascript写的简单的加减乘除计算器,里面涉及到一些方法还是很实用的哦,新手不要错过
收藏 0 赞 0 分享

Jquery中删除元素的实现代码

empty用来删除指定元素的子元素,remove用来删除元素,或者设定细化条件执行删除
收藏 0 赞 0 分享

javaScript 利用闭包模拟对象的私有属性

JavaScript缺少块级作用域,没有private修饰符,但它具有函数作用域。作用域的好处是内部函数可以访问它们的外部函数的参数和变量(除了this和argument
收藏 0 赞 0 分享

为JavaScript类型增加方法的实现代码(增加功能)

大家在js开发过程中有些功能已经满足不了我们的需求,或没有我们需要的功能,那么我们就可以自己扩展下,个性化js
收藏 0 赞 0 分享
查看更多