zoukankan      html  css  js  c++  java
  • js 实现纵向轮播

    效果

    html

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title>纵向滚动</title>
            <link rel="stylesheet" type="text/css" href="css/scrollVertical.css">
        </head>
        <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
        <script src="js/scroll.js"></script>
        <body>
            <div id="scrollFlash" class="scrollFlash">
                <ul class="ulFlash"></ul>
            </div>
            <script type="text/javascript">
                var list = [{
                        "id": "1",
                        "name": "张一",
                    },
                    {
                        "id": "2",
                        "name": "王二",
                    }
                ];
                if (list.length > 0) {
                    $('#scrollFlash').show();
                    var j = 0;
                    while (j < list.length) {
                        var string = "<li>序号<span class='flashName t_center'>" +
                            list[j].id + "</span>姓名<span class='flashName t_center'>" +
                            list[j].name + "</span></li>";
                        $('.ulFlash').append(string);
                        j++;
                    }
                    var h = $('.ulFlash li:first-child').height() + 5;
                    if (list.length > 1) {
                        $("div#scrollFlash").myScroll({
                            speed: 40, // 数值越大,速度越慢
                            rowHeight: h // li的高度
                        });
                    }
                }
            </script>
        </body>
    </html>

    scrollVertical.css

    .t_center {
        text-align: center;
    }
    
    #scrollFlash {
         80%;
        margin: 100px auto auto auto;
        height: 60px;
        background-color: lightcoral;
        line-height: 60px;
        padding: 5px;
        font-size: 40px;
        overflow: hidden;
        color: #ffffff;
    }
    
    #scrollFlash ul li {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 2px;
    }
    
    .flashName {
        max- 20%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    scroll.js

    (function($){
        $.fn.myScroll = function(options){
        //默认配置
        var defaults = {
            speed:40,  //滚动速度,值越大速度越慢
            rowHeight:24 //每行的高度
        };
        
        var opts = $.extend({}, defaults, options),
                  intId = [];
        
        function marquee(obj, step){
        
            obj.find("ul").animate({
                marginTop: '-=1'
            },0,function(){
                    var s = Math.abs(parseInt($(this).css("margin-top")));
                    if(s >= step){
                        $(this).find("li").slice(0, 1).appendTo($(this));
                        $(this).css("margin-top", 0);
                    }
                });
            }
            
            this.each(function(i){
                var sh = opts["rowHeight"],speed = opts["speed"],
                                  _this = $(this);
                intId[i] = setInterval(function(){
                    if(_this.find("ul").height()<=_this.height()){
                        clearInterval(intId[i]);
                    }else{
                        marquee(_this, sh);
                    }
                }, speed);
    
                _this.hover(function(){
                    clearInterval(intId[i]);
                },function(){
                    intId[i] = setInterval(function(){
                        if(_this.find("ul").height()<=_this.height()){
                            clearInterval(intId[i]);
                        }else{
                            marquee(_this, sh);
                        }
                    }, speed);
                });     
            });
        }
    
    })(jQuery);
  • 相关阅读:
    程序崩溃访问非法内存
    C# IP转换,时间转换
    _heap_alloc_dbg 崩溃
    TaskIcon 系统任务栏图标
    zlib 压缩使用
    桌面清理工具
    CMMI知识库(精简版)
    JAVA程序员面试题集合
    OracleDECODE用法
    Oracle索引重建
  • 原文地址:https://www.cnblogs.com/linjiangxian/p/11464712.html
Copyright © 2011-2022 走看看