Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript将HTML元素平滑地滚动到特定方向_Javascript_Html - Fatal编程技术网

使用Javascript将HTML元素平滑地滚动到特定方向

使用Javascript将HTML元素平滑地滚动到特定方向,javascript,html,Javascript,Html,我想做的是,如果你点击一个按钮(假设“向左滚动”),它就会开始向左滚动,直到我按下另一个按钮(停止按钮)停止它,它才会停止 函数co(){ coo=document.getElementById('tar'); var x=coo.style.left; 变量y=(x+=10); coo.style.left=y+'px'; } div{ 位置:绝对位置; 背景颜色:橙色; 边界半径:50%; 宽度:100px; 高度:100px; 过渡时间:2s; } 身体{ 宽度:100%; 身高:100

我想做的是,如果你点击一个按钮(假设“向左滚动”),它就会开始向左滚动,直到我按下另一个按钮(停止按钮)停止它,它才会停止

函数co(){ coo=document.getElementById('tar'); var x=coo.style.left; 变量y=(x+=10); coo.style.left=y+'px'; }
div{
位置:绝对位置;
背景颜色:橙色;
边界半径:50%;
宽度:100px;
高度:100px;
过渡时间:2s;
}
身体{
宽度:100%;
身高:100%;
}
.另外{
z指数:2;
位置:绝对位置;
背景色:#CCC;
右:15px;
底部:10px;
}

再加上这个

只需使用setInterval在循环中重复您的函数,使用用户clearInterval取消即可

此外,您可能希望防止在动画运行时再次单击Plus This


代码片段

var-cog;
函数co(){
//第一次运行不需要延迟
cot();
cog=设定间隔(cot,500)
}
函数nco(){
净空间隔(cog)
}
函数cot(){
var coo=document.getElementById('tar');
var x=window.getComputedStyle(coo,null).left;
变量y=数量(x.replace('px','')+100;
coo.style.left=y+'px';
}
div#tar{
左:10px;
位置:绝对位置;
背景颜色:橙色;
边界半径:50%;
宽度:100px;
高度:100px;
过渡时间:0.5s;
过渡时间函数:线性;
}
身体{
宽度:100%;
身高:100%;
}
.另外{
z指数:2;
位置:绝对位置;
右:15px;
底部:10px;
}

再加上这个
停止