zoukankan      html  css  js  c++  java
  • js文字无缝滚动

    今天要实现个文字滚动的效果,一开始试了<marquee></marquee>这个标签,但是 发现效果不太好,不能无缝滚动,而且在手机上有卡顿不太流畅。决定用js去实现。

    首先写个标签,注意下标签里面文字的长度要超出标签,因为我下面加了判断,如果没有超出就不会有滚动条,也就不会滚动哦~

    <style>
    #scrollobj{
        min-width: 70px;          /*先在这里写个最小宽度*/
        display: inline-block;
        white-space: nowrap;
        overflow: hidden;
    }
    </style>
    
    <body>
        <div id="scrollobj">这里是滚动内容纯文字哈哈哈,滚动吧</div>
    </body>

    在你的页面里调用这个方法就ok了。

    function sc() {
        var $scrollobj = document.getElementById('scrollobj');
        function scroll(self) {
            /*往左*/
            var tmp = (self.scrollLeft)++;
            //当滚动条到达右边顶端时 
            if (self.scrollLeft == tmp) {
                self.innerHTML += "&nbsp;&nbsp;&nbsp;&nbsp;" + self.innerHTML;
            }
            //当滚动条滚动了初始内容的宽度时滚动条回到最左端 
            if (self.scrollLeft >= self.firstChild.offsetWidth) {
                self.scrollLeft = 0;
            }
        }
    
        if ($scrollobj.scrollWidth > $scrollobj.offsetWidth) {   // 判断是否需要滚动
            var timer = setInterval(function () {
                scroll($scrollobj);
            }, 30);
        }
    }
  • 相关阅读:
    正则表达式的学习笔记
    apply()的使用
    for循环性能测试
    js基础复习~Array对象
    判断值是否为undefined
    layui 单选框取消选中
    layui 表单验证
    火狐浏览器下,表头边框无效
    css3 宽度百分比减去固定宽度 无效问题
    javaScript中的 call 和 apply
  • 原文地址:https://www.cnblogs.com/wteng/p/5729808.html
Copyright © 2011-2022 走看看