<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<style>
.wrap{width:800pxheight:500pxmargin:200px auto 0position: relativeborder:1px solid #000overflow: hidden}
h1{position: absoluteleft:800pxword-break: keep-all}
</style>
<body>
<div class="wrap">
<h1>这是无缝滚动</h1>
<h1>这是无缝滚动</h1>
</div>
<script>
var wenzi=document.querySelectorAll("h1")
var speed1=0
var speed2=0
var flag=false
setInterval(function(){
speed1-=10
wenzi[0].style.left=800+speed1+"px"
wenzi[1].style.left=800+speed2+"px"
if(wenzi[0].offsetLeft==0){
flag=true
}
if(flag){
speed2-=10
}
if(wenzi[0].offsetLeft==0){
speed2=0
}
if(wenzi[1].offsetLeft==0){
speed1=0
}
},60)
</script>
</body>
</html>
纯手敲 觉得有用可以点个赞啊
<script type="text/javascript">var speed=30
demo2.innerHTML=demo1.innerHTML
function Marquee(){
if(demo2.offsetWidth-demo.scrollLeft<=0)
demo.scrollLeft-=demo1.offsetWidth
else{
demo.scrollLeft++
}
}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>
demo的css一定要设定width和overflow:hidden
<div id="demo">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div id="demo1">
<table width="1000" height="172" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
文字放这里
</td>
</tr>
</table>
</div>
</td>
<td>
<div id="demo2"></div>
</td>
</tr>
</table>
</div>
原理demo2复制demo1然后连成一行,demo1滚动完滚动demo2因为内容一样所以看不出来,demo2滚动完滚动demo1
可以实现匀速、无缝、加链接以及其它的修饰效果,本代码就是实现了这一功能,让文字从右至右平滑滚动,滚动宽度、高度、速度均可以设定。Js文字向左运动
var
marqueewidth=350
var
marqueeheight=22
var
speed=5
var
marqueecontents='欢迎光临脚本之家
网页特效栏目,精品特效全收罗!'
if
(document.all)
document.write(''+marqueecontents+'')
function
regenerate(){
window.location.reload()
}
function
regenerate2(){
if
(document.layers){
setTimeout("window.onresize=regenerate",450)
intializemarquee()
}
}
function
intializemarquee(){
document.cmarquee01.document.cmarquee02.document.write(''+marqueecontents+'')
document.cmarquee01.document.cmarquee02.document.close()
thelength=document.cmarquee01.document.cmarquee02.document.width
scrollit()
}
function
scrollit(){
if
(document.cmarquee01.document.cmarquee02.left>=thelength*(-1)){
document.cmarquee01.document.cmarquee02.left-=speed
setTimeout("scrollit()",100)
}
else{
document.cmarquee01.document.cmarquee02.left=marqueewidth
scrollit()
}
}
window.onload=regenerate2
[Ctrl+A
全选
注:如需引入外部Js需刷新才能执行]