• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

jquery实现的时间轴

jquery 程序员 7年前 (2019-01-09) 150次浏览 已收录 0个评论

jquery实现的时间轴

样式文件style.css

 .timeline{  
        position: absolute;  
        z-index: 5000;  
        font-size: 12px;  
        border: 1px solid #ccc;  
        background: whitesmoke;  
        background: -webkit-linear-gradient(top, whitesmoke, #ddd);  
        background: -ms-linear-gradient(top, whitesmoke, #ddd);  
        background: -moz-linear-gradient(top, whitesmoke, #ddd);  
        border-radius: 4px 0 4px 0;  
        box-shadow: 0px 0px 10px rgba(150,150,150,0.5);  
    }  
    .timeline ul.ulvec{  
        margin-left: 10px;  
        list-style: none;  
        background: url("dot.gif") 0px 0px repeat-y;  
        padding-right: 10px;  
    }  
    .timeline ul li.livec{  
        margin-left: -43px;  
        padding: 0px 0px 0px 12px;  
        background: url("biggerdot.png") 0px 50% no-repeat;  
        cursor: pointer;  
    }  
    .timeline ul.ulhor{  
        margin: 0px;  
        padding: 5px 10px;  
        list-style: none;  
        background: url("dot.gif") 0px 5px repeat-x;  
    }  
    .timeline ul li.lihor{  
        display: inline-block;  
        margin: 0px;  
        padding: 10px 0px 0px 0px;  
        margin-top: -3px;  
        background: url("biggerdot.png") 50% 0px no-repeat;  
        cursor: pointer;  
    }  
    .timeline ul li span{  
        display: block;  
        padding: 4px 15px;  
        border: 1px solid transparent;  
    }  
    .timeline ul li.active span{  
        color: #f2f2f2;  
        box-shadow: inset 0px 0px 30px #333333;  
        border-radius: 4px;  
        border: 1px solid #ffffff;  
        background: #666;  
    }

控件代码 jquery.custom.timeline.js

(function($){  
        $.fn.TimeLine = function(options){  
            var defaults = {  
                data:null,  
                vertical:false  
            };  
      
            var options = $.extend(defaults,options);  
            var _data = options.data;  
            var _vertical = options.vertical;  
            var _showDiv = $(this).addClass("timeline");  
            var _ul = $("<ul />").appendTo(_showDiv);  
            if(_vertical){  
                _ul.addClass("ulvec");  
            }  
            else{  
                _ul.addClass("ulhor");  
            }  
            for(var i= 0,dl=_data.length;i<dl;i++){  
                var _li = $("<li />").appendTo(_ul);  
                if(_vertical){  
                    _li.addClass("livec");  
                }  
                else{  
                    _li.addClass("lihor");  
                }  
                var _span = $("<span />").attr("value",_data[i].value).html(_data[i].label).appendTo(_li);  
                _span.on("click",function(){  
                    var _value = this.getAttribute("value");  
                    active(_value);  
                });  
            }  
            function active(value){  
                $("li").removeClass("active");  
                var _spans = $("ul").find("span");  
                for(var i= 0,dl=_spans.length;i<dl;i++){  
                    var _span = _spans[i];  
                    if(_span.getAttribute("value")===value){  
                        var _li = $(_span.parentNode);  
                        _li.addClass("active");  
                    }  
                }  
            }  
            this.active = active;  
            return this;  
        }  
    })(jQuery);

调用实现

 <!DOCTYPE html>  
    <html>  
    <head lang="en">  
        <meta charset="UTF-8">  
        <title></title>  
        <link rel="stylesheet" href="style.css" type="text/css">  
        <script src="http://gaodaima/jquery/jquery-1.8.3.js"></script>  
        <script src="jquery.custom.timeline.js"></script>  
        <script>  
            var data = [{"label":"2011年","value":"2011"},  
                {"label":"2012年","value":"2012"},  
                {"label":"2013年","value":"2013"}  
            ];  
            $(function(){  
                var timelinehor = $("#timelinehor").TimeLine({  
                    data:data,  
                    vertical:false  
                });  
                timelinehor.active(data[0].value);  
                var timelinevec = $("#timelinevec").TimeLine({  
                    data:data,  
                    vertical:true  
                });  
                timelinevec.active(data[0].value);  
            });  
        </script>  
    </head>  
    <body>  
    <div id="timelinehor"></div><br><br><br>  
    <div id="timelinevec"></div>  
    </body>  
    </html>

 


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:jquery实现的时间轴
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址