zoukankan      html  css  js  c++  java
  • jquery实现文字上下滚动效果

    文字上下滚动是经常用到的js效果,这里介绍一种上下渐隐渐出的文字展现效果!

    代码实现很简单,只需要引入jquery就可以。

    代码如下:

    <!DOCTYPE>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>文字滚动</title>
    <style type="text/css">
     #sidebar{width:200px; height;500px; overflow:hidden; margin:0 auto; background:#f00; color:#fff;}
     #marquee{width:200px; margin:0;padding:0;}
     #marquee li{width:200px;height:20px; line-height:20px;}
     ul li{list-style:none;}
    </style>
    </head>
    <body>
    <div id="sidebar">
            <ul id="marquee" class="marquee spy">
                <li>11111111111111111111111111111</li>
                <li>22222222222222222222222222222</li>
                <li>33333333333333333333333333333</li>
                <li>44444444444444444444444444444</li>
                <li>55555555555555555555555555555</li>
                <li>asdsdssssssssssssssssssdddddd</li>
                <li>ggggggggggggggggggggggggggggg</li>
                <li>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx</li>
                <li>11111111111111111111111111111</li>
                <li>22222222222222222222222222222</li>
                <li>33333333333333333333333333333</li>
                <li>44444444444444444444444444444</li>
                <li>55555555555555555555555555555</li>
                <li>asdsdssssssssssssssssssdddddd</li>
                <li>ggggggggggggggggggggggggggggg</li>
                <li>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx</li>
            </ul>
          </div>
    </body>
    </html>
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript">
    $(function () {
        $('ul.spy').simpleSpy();
    });
    (function ($) {    
    $.fn.simpleSpy = function (limit, interval) {
        limit = limit || 12;//展示数量
        interval = interval || 4000;
        return this.each(function () {
            var $list = $(this),
                items = [],
                currentItem = limit,
                total = 0,
                height = $list.find('> li:first').height();
    
            $list.find('> li').each(function () {
                items.push('<li>' + $(this).html() + '</li>');
            });
            total = items.length;
            $list.wrap('<div class="spyWrapper" />').parent().css({ height : height * limit });
            $list.find('> li').filter(':gt(' + (limit - 1) + ')').remove();
            function spy() {
                var $insert = $(items[currentItem]).css({
                    height : 0,
                    opacity : 0,
                    display : 'none'
                }).prependTo($list);           
                $list.find('> li:last').animate({ opacity : 0}, 1000, function () {
                    $insert.animate({ height : height }, 1000).animate({ opacity : 1 }, 1000);
                    $(this).remove();
                });
                currentItem++;
                if (currentItem >= total) {
                    currentItem = 0;
                }
                setTimeout(spy, interval)
            }
            spy();
        });
    }; 
    })(jQuery);
    </script>

    样式自己随便定义都可以!展示的数量也可以自己更改,效果看起来还是不错的!

  • 相关阅读:
    如何配置透明发光的骚气 vscode —— Jinkey 原创
    JS引用类型总结
    element UI -- 默认样式修改不成功原因
    上传本地Vue项目到github
    网页加载速度优化方法总结
    移动端click时间、touch事件、tap事件详解
    移动端开发用touch事件还是click事件
    禁止网站调用favicon.ico请求
    HTTP里面的响应和请求
    jave script 中this的指向 (六种场景)
  • 原文地址:https://www.cnblogs.com/shizhouyu/p/3941984.html
Copyright © 2011-2022 走看看