+ -
当前位置:首页 → 问答吧 → 发个图片渐影轮播效果,互相学习下...

发个图片渐影轮播效果,互相学习下...

时间:2010-06-01

来源:互联网

复制内容到剪贴板
代码:
/*
==轮播{对象|对象属性}==
对象属性{宽度|高度|文字大小|自动切换时间}
*/
(function($){
    dk_slideplayer = function(object,config){
        this.obj = object;
        this.n =0;
        this.j =0;
        var _this = this;
        var t;
        var defaults = {width:"300px",height:"200px",fontsize:"12px",right:"0px",bottom:"3px",time:"5000"};
        this.config = $.extend(defaults,config);
        this.count = $(this.obj + " li").size();
        if(this.config.fontsize == "14px"){
            this.size = "14px";this.height = "23px";this.right = "6px";this.bottom = "15px";
        }else{
            this.size = "12px";this.height = "21px";this.right = "6px";this.bottom = "10px";
        }
        this.factory = function(){
            //元素定位
            $(this.obj).css({position:"relative",zIndex:"0",margin:"0",padding:"0",width:this.config.width,height:this.config.height,overflow:"hidden"})
            $(this.obj).prepend("<div style='position:absolute;z-index:20;right:"+this.config.right+";bottom:"+this.config.bottom+"'></div>");
            $(this.obj + " li").css({position:"absolute",top:"0",left:"0",width:"100%",height:"100%",overflow:"hidden"}).each(function(i){
                $(_this.obj + " div").append("<a>"+(i+1)+"</a>");
            });
            $(this.obj + " img").css({border:"none",width:"100%",height:"100%"})
            this.resetclass(this.obj + " div a",0);
            //标题背景
            $(this.obj).prepend("<div class='dkTitleBg'></div>");
            $(this.obj + " .dkTitleBg").css({position:"absolute",margin:"0",padding:"0",zIndex:"1",bottom:"0",left:"0",width:"100%",height:_this.height,background:"#000",opacity:"0.4",overflow:"hidden"})
            //插入标题
            $(this.obj).prepend("<div class='dkTitle'></div>");
            $(this.obj + " p").each(function(i){            
                $(this).appendTo($(_this.obj + " .dkTitle")).css({position:"absolute",margin:"0",padding:"0",zIndex:"2",bottom:"0",left:"0",width:"100%",height:_this.height,lineHeight:_this.height,textIndent:"5px",textDecoration:"none",fontSize:_this.size,color:"#FFFFFF",background:"none",opacity:"1",overflow:"hidden"});
                if(i!= 0){$(this).hide()}
            });
            this.slide();
            this.addhover();
            t = setInterval(this.autoplay,this.config.time);
        }
        //图片渐影
        this.slide = function(){
            $(this.obj + " div a").mouseover(function(){
                _this.j = $(this).text() - 1;
                _this.n = _this.j;
                if (_this.j >= _this.count){return;}
                $(_this.obj + " li:eq(" + _this.j + ")").fadeIn("200").siblings("li").fadeOut("200");
                $(_this.obj + " .dkTitle p:eq(" + _this.j + ")").show().siblings().hide();
                _this.resetclass(_this.obj + " div a",_this.j);
            });
        }
        //滑过停止
        this.addhover = function(){
            $(this.obj).hover(function(){clearInterval(t);}, function(){t = setInterval(_this.autoplay,_this.config.time)});
        }
        //自动播放
        this.autoplay = function(){
            _this.n = _this.n >= (_this.count - 1) ? 0 : ++_this.n;
            $(_this.obj + " div a").eq(_this.n).triggerHandler('mouseover');
        }
        //翻页函数
        this.resetclass =function(obj,i){
            $(obj).css({float:"left",marginRight:"3px",width:"15px",height:"14px",lineHeight:"15px",textAlign:"center",fontWeight:"800",fontSize:"12px",color:"#000",background:"#FFFFFF",cursor:"pointer"});
            $(obj).eq(i).css({color:"#FFFFFF",background:"#FF7D01",textDecoration:"none"});
        }
        this.factory();
    }
})(jQuery)
呵呵...给懒人们的...附件中有完整的DEMO...

[ 本帖最后由 musictea 于 2010-6-5 08:24 编辑 ]

附件

effect.rar (202.13 KB)

2010-6-1 14:24, 下载次数: 86

作者: musictea   发布时间: 2010-06-01

为保证在加载JS文件后效果的正常运行,所有的效果是直接使用CSS方法写入.

大家有啥好的意见或问题都可以发上来...谢谢...

作者: musictea   发布时间: 2010-06-01

不能在线看吗

作者: cloudgamer   发布时间: 2010-06-01

学习一下,效果还行

作者: shbijiben   发布时间: 2010-06-01

最好放个在线运行的,方便大家看效果。。不过还是支持一下

作者: iaw2001200   发布时间: 2010-06-01

懒人很多,不能运行的基本不试...
楼主来个完整的

作者: 8yong8   发布时间: 2010-06-01

吾就是懒人

作者: mayacger   发布时间: 2010-06-01

我也是

作者: born456   发布时间: 2010-06-01

挺不错的

作者: liang672369282   发布时间: 2010-06-01

懒人+1……

作者: sunxiangjun1986   发布时间: 2010-06-01

呵呵...是我疏忽了...

我在附件中上传了...大家可以下来互相学习下...

最后承认我也是个大懒人...

附件

effect.rar (202.13 KB)

2010-6-1 14:24, 下载次数: 29

作者: musictea   发布时间: 2010-06-01

迟来的

作者: river1   发布时间: 2010-06-04

学习下

作者: bratxy   发布时间: 2010-06-04

mark一下

作者: wmaster   发布时间: 2010-06-04

下下来看看。

作者: jgs1982   发布时间: 2010-06-04

郁闷。没有在线运行代码。

作者: wangsdong   发布时间: 2010-06-05

楼主,请教,有个小问题,轮播的时候会从最后一张图片播起,而不是第一张。

作者: s1b2   发布时间: 2010-06-08

热门下载

更多