自动滚动启用和禁用链接
Auto Scroll enable and disable link
如何修改以下脚本,使其能够使用像以下html链接这样的简单文本链接停止并启用自动滚动<a href="javascript:stopScroll()">Stop Scrolling</a>
?谢谢
<script>
(function() {
'use strict';
var dbh,sto,num=3,temp=0,scrolldelay=70;
function init(){
dbh=document.body.offsetHeight;
pageScroll();
}
function pageScroll() {
window.scrollBy(0,num);
temp+=num;
if((temp>=dbh)||(temp<=0)){
num=-num;
}
sto=setTimeout(function(){pageScroll();},scrolldelay);
}
window.addEventListener?
window.addEventListener('load',init,false):
window.attachEvent('onload',init);
})();
</script>
我最终开始工作的脚本与我最初的帖子有点不同。这似乎有效,但由于某种原因,在谷歌Chrome中没有那么流畅。
这是我最后整理的,这里也有人要感谢。。。
<script>
var xMax, yMax, xNeg=1, yNeg=1;
function pageScroll() {
window.scrollBy(1 * xNeg, 1 * yNeg);
if(xMax == window.scrollX)xNeg = xNeg * -1;
if(yMax == window.scrollY)yNeg = xNeg * -1;
scrolldelay = setTimeout(pageScroll,1);
console.log(window.scrollY);
xMax = window.scrollX;
yMax = window.scrollY;
}
function stopScroll() {
clearTimeout(scrolldelay);
}
</script>
现在,对于身体部分。。。
<a href="javascript:stopScroll()">Stop or Slow Auto Scroll.</a><br>
<a href="javascript:pageScroll()">Start or Speed Up Auto Scroll.</a>
主要剧本来自于萨吉特奈尔在stackoverflow的另一篇文章(本文在此)
stopScroll()函数只是添加的,函数调用pageScroll()只是作为链接调用的。这一点在本条中得到了证明。
相关文章:
- 无法在启用视差的页面中单击锚链接
- 无法在第一次单击时禁用链接,并在动画完成后重新启用
- 如何通过Javascript启用链接按钮最初设置为Enable=false
- 使用 jquery 逐个链接启用默认行为
- 附加链接已禁用,然后启用它
- 在阻止默认操作时启用菜单的链接
- 禁用.aspx页面上的权限,但启用超链接
- 禁用链接,直到所有动画停止,然后再次启用它们
- 如何仅在启用 javascript 时链接外部样式表
- Javascript函数在活动选项卡上启用链接
- 如何在开始时禁用 HTML 中的链接并在之后启用它
- 使用 jquery/javascript 从 iFrame 启用/禁用父元素的 HTML 超链接(对于给定的结构)
- 在触摸设备上的悬停状态后启用链接,而不会影响正常滚动
- 使用jquery禁用和启用链接
- jquery addClass()来启用一个按钮作为链接
- 使用javascript启用ASP.NET超链接
- 周五下午4点禁用链接,周日早上7点启用链接
- 动态禁用/启用引导下拉菜单中的链接
- 如何在reveal.js中启用幻灯片外部的链接
- 根据一天中的时间启用/禁用链接?(每次30分钟)