Javascript怎么实现字幕滚动
导读:收集整理的这篇文章主要介绍了Javascript怎么实现字幕滚动,觉得挺不错的,现在分享给大家,也给大家做个参考。Javascript实现字幕滚动的方法:首先创建HTML和css文件;然后将容器设置固定宽度,并设置超出部分隐藏;最后创建js...
收集整理的这篇文章主要介绍了Javascript怎么实现字幕滚动,觉得挺不错的,现在分享给大家,也给大家做个参考。Javascript实现字幕滚动的方法:首先创建HTML和css文件;然后将容器设置固定宽度,并设置超出部分隐藏;最后创建js文件并通过定时器改变位置即可。
本文操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
Javascript怎么实现字幕滚动?
原生js实现字幕滚动
使用css和原生js实现的字幕滚动效果,无缝衔接
效果
原理
容器设置固定宽度,超出部分隐藏,滚动部分绝对定位并通过定时器改变位置
实现
- html部分
p class="scroll"> span> 这里是要现实的滚动内容....../span> /p>
- css部分
.scroll { width: 400px; height: 23px; whITe-space: nowrap; overflow: hidden; margin-left: 40px; position: relative; } .scroll > span { position: absolute; }
- js部分
// 字幕滚动变量VAR scrollTime = nullvar LEN = 400 // 一个完整滚动条的长度var x = 0// 启动滚动定时器function roll () { console.LOG('启动') var tag1 = document.querySelector('.scroll> span') var tag2 = tag1.nextSibling var fun = function () { tag1.style.left = x + 'px' tag2.style.left = (x + LEN) + 'px' x = x - 5 if ((x + LEN) === 0) { x = 0 } } if (scrollTime) { clearInterval(scrollTime) } scrollTime = setInterval(fun, 300)} // 绑定鼠标事件function bindMouseEvent () { var el = document.querySelector('.scroll> span') var el2 = el.cloneNode(true) LEN = el.clientWidth + 100 // 动态修改滚动条的长度,避免文字过多重叠 el2.style.left = (x + LEN) + 'px' el.parentElement.apPEndChild(el2) el.addEventListener('mouseenter', function (e) { clearInterval(scrollTime) } ) el.addEventListener('mouseleave', function (e) { roll() } )}
推荐学习:《javascript高级教程》
以上就是Javascript怎么实现字幕滚动的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Javascript怎么实现字幕滚动
本文地址: https://pptw.com/jishu/591625.html