JQ实现文字跑马灯,文字横向滚动

因需求要做一个,横向的文字从右到左的跑马灯 ,鼠标移动上去暂停,参考其他大大的跑马灯不太适用所以,自己再次封装了一个跑马灯,分享给大家也方便自己下次直接使用,我自己用的JQ版本为3.3.1(jquery-3.3.1.min.js)
先上效果图
在这里插入图片描述
代码部分为

HTML部分

    <div style="padding: 0 1rem;">
        <div id="container_small_tip">
            <div id="content_small_tip"></div>
        </div>
    </div>

CSS部分

#container_small_tip{
	background:#ffffff; 
	position:relative; 
	overflow:hidden; 
	width:100%; 
	height:36px;
	line-height:36px;  
}
#content_small_tip{
	position:absolute; 
	left:0; 
	top:0; 
	white-space:nowrap; 
	color: #EBEEF7;
}

JS部分

调用方式为

var content = "自8888年8月8日起原基础强化班和原全面提升班合并升级为全面提分班,原全面提升班和原全面提升班所剩课时在升级后的全面提分班自动顺延";
$("#content_small_tip").html(content);
roll(2,"#container_small_tip","#content_small_tip");

跑马灯函数封装为

//跑马灯插件start
function roll(speed=1,fatherselect,select){
    if ($(fatherselect) == null) return;
    var $container = $(fatherselect);//#container_small_tip
    var $content = $(select);//#content_small_tip
    var init_left = $container.width();
    $content.css({ left: parseInt(init_left) + "px" });
    var This = this;
    var time = setInterval(function () {move($container, $content, speed); }, 20); 				  //setInterval会改变this指向,即使加了This=this,也要用匿名函数封装

    $container.bind("mouseover", function () {
        clearInterval(time);
    });
    $container.bind("mouseout", function () {
        time = setInterval(function () {move($container, $content, speed); }, 20);
    });
    // setTimeout(function () { $("#container").slideUp(); }, 30000);  //毫秒单位,显示30s后消失
    return this;
};
function move($container, $content, speed){
    var container_width = $container.width();
    var content_width = $content.width();
    if (parseInt($content.css("left")) + content_width > 0) {
        $content.css({ left: parseInt($content.css("left")) - speed + "px" });
        $content.css({color:"#02A0E9"})//改变字体颜色
    }
    else {
        $content.css({ left: parseInt(container_width) + "px" });
        $content.css({color:"#02A0E9"})//改变字体颜色
    }
}
//跑马灯插件end
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一颗松鼠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值