欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

如何实现在网页中双击自动滚屏

程序员文章站 2022-07-13 12:58:37
...

  如何实现在网页中双击自动滚屏
            
    
    博客分类: JavaScript 双击自动滚屏 如何实现在网页中双击自动滚屏
如何实现在网页中双击自动滚屏
            
    
    博客分类: JavaScript 双击自动滚屏 解决思路
在文档区域双击时设置一个定时器,每隔一段时间让窗口向下移动一段距离。在文档区域单击时取消定时器。
如何实现在网页中双击自动滚屏
            
    
    博客分类: JavaScript 双击自动滚屏 具体步骤
代码示例:

方法一:判断滚动至页面最底端时停止滚动

<script>
var timer 
//设置每10毫秒执行一次 scrollit 的函数
function init(){timer=setInterval("scrollit()",10)} 
function stop(){clearInterval(timer)}//清除计时器,使窗口停止滚动
function scrollit(){        //使窗口滚动的函数
  scrollBy(0,1)             //将窗口滚动在 Y 轴方向上滚动1个偏移量
    //窗口自动停止滚动的条件
if(document.body.scrollTop==document.body.scrollHeight) 
     stop()

document.onmousedown=stop         //在文档区域点击时触发 stop 函数
document.ondblclick=init       //在文档区域双击时触发 init 函数
//为了测试效果而加的代码,使页面出现纵向滚动
document.write(new Array(100).join("<br>"))   
</script>

注意:判断滚动是否至页面底端的条件忽略了滚动滑块的高度。

方法二:不考虑自动停止滚动。

<script>
var timer
//在文档区域双击时触发函数,使窗口每10毫秒在 Y 轴方向上滚动1个偏移量
document.ondblclick=function(){timer=setInterval("scrollBy(0,1)",10)} 
//在文档区域点击时触发函数,取消定时器
document.onmousedown=function(){clearInterval(timer)}    
//为了测试效果而加的代码,使页面出现纵向滚动
document.write(new Array(120).join("<br>"))   
</script>

特别提示
代码运行后,在文档区域双击,页面将自动向下滚动,在文档区域单击时滚动停止。

特别说明


本例重点在于捕获双击事件 ondblclick 和页面的滚动偏移量 scrollBy。
1. ondblclick 当用户双击对象时触发。
2. scrollBy(x,y) 将窗口滚动 x 和 y 偏移量。

相关标签: 双击自动滚屏