重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
自动滚动,主要思路是用js自带的setInterval方法。
创新互联网络公司拥有十多年的成都网站开发建设经验,数千家客户的共同信赖。提供成都网站建设、成都做网站、网站开发、网站定制、卖友情链接、建网站、网站搭建、成都响应式网站建设公司、网页设计师打造企业风格,提供周到的售前咨询和贴心的售后服务
定义和用法
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
语法
setInterval(code,millisec[,"lang"])
参数
code 必需。要调用的函数或要执行的代码串。
millisec 必须。周期性执行或调用 code 之间的时间间隔,以毫秒计。
返回值
一个可以传递给 Window.clearInterval() 从而取消对 code 的周期性执行的值。
简单的例子,仅供参考:
style
*{ margin:0; padding:0; list-style:none;}
#box{ width:840px; border:1px solid #000; height:210px; margin:30px auto; position:relative; overflow:hidden;}
#box ul{ position:absolute; left:0; top:0;}
#box ul li{ width:200px; height:200px; float:left; padding:5px;}
/style
script
window.onload=function(){
var oBox=document.getElementById('box');
var oUl=oBox.children[0];
var aLi=oUl.children;
//复制一份内容
oUl.innerHTML+=oUl.innerHTML;
oUl.style.width=aLi.length*aLi[0].offsetWidth+'px';
setInterval(function(){
var l=oUl.offsetLeft+10;
if(l=0){
l=-oUl.offsetWidth/2;
}
oUl.style.left=l+'px';
},30);
};
/script
/head
body
div id="box"
ul
liimg src="img/1.jpg" width="200"/li
liimg src="img/2.jpg" width="200"/li
liimg src="img/3.jpg" width="200"/li
liimg src="img/4.jpg" width="200"/li
/ul
/div
/body
推荐使用marquee实现图片滚动,示例:
marquee
scrolldelay="100"
direction="up"
onmouseover="this.stop()"
onmouseout="this.start()"img
src="xxxxxxx"/marquee
其中scrolldelay="100"
===指滚动延迟时间,单位是毫秒ms,默认为90ms
direction="up"
===指滚动方向,默认从左往右,可取的值为:up,down,left,right
onmouseover="this.stop()"
===指鼠标悬停在图片上时,图片静止
onmouseout="this.start()"
===指鼠标离开图片时,图片运动
希望对您有所帮助
SCRIPT language="JavaScript"
var speed=50; //设置滚动速度
demo2.innerHTML=demo1.innerHTML //复制dome1为dome2
function Marquee(){
if(demo2.offsetTop-demo.scrollTop=0) //当滚动至dome1与dome2交界时
demo.scrollTop-=demo1.offsetHeight //dome跳到最顶端
else{
demo.scrollTop++
}
}
var MyMar=setInterval(Marquee,speed) //设置定时器
demo.onmouseover=function() {clearInterval(MyMar)}//鼠标移上时清除定时器达到滚动停止的目的
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}//鼠标移开时重设定时器,继续滚动
/SCRIPT
div id="demo" style="overflow: hidden; height: 600; width: 180; background: #214984; color: #ffffff"
div id="demo1" align="center"
!-- 定义图片 --
/div
div id="demo2" align="center"/div
/div
document.getElementById("smallDiv").style.left应该是document.getElementById("smallDiv").style.pixelLeft(注意大小写)
最好用scrollLeft比如document.getElementById("smallDiv").scrollLeft = 55;
滚动起来卡顿现象好点
我不知道上面是不是你的全部代码,反正相应的onclick要加的