js怎么控制网页滚动到指定位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js怎么控制网页滚动到指定位置相关的知识,希望对你有一定的参考价值。

使用scrollby(x轴,y轴)方法就可以使文档对象滚动到距离浏览器窗口坐标的指定位置上

注意事项

    文档对象可以看做是网页所有可见内容的存储容器,网页所有可见内容称为页面

    网页x轴坐标与数学一样,但是y轴坐标是相反的,向下是正数,向上是负数

    页面移动出去的距离不能和滚动条移动出去的距离对等

    滚动条移动出去多少像素才能等达到页面要移动出去的像素是根据整个页面的尺寸比例计算的

    这个文档对象移动出去的距离在坐标系上是一定是负数,但是我们要用正数来表示他距离浏览器窗口0,0坐标的距离

    这个方法移动的是文档对象和浏览器存储文档对象的窗口0,0位置坐标的距离,绝不是滚动条和文档对象的距离,

    移动出去的距离就是文档对象不可见部分内容和浏览器存储文档对象的窗口0,0坐标的距离

    这个方法使用scroll命名只是因为文档对象移动出去的距离需要滚动条滚动才能达到效果,便于记忆而已

    scrollby()方法是window对象下的方法,document对象及其子对象没有该方法

    document对象及其子对象如果要获取或设置元素内部内容滚动出去的距离,请使用scrollTop和scrollLeft, 注意该方法是计算的不可见部分移动出去的内容顶端距离容器的距离是从容器内边距开始计算,而不是边框

    使用scrollby()必须存在滚动条,且有一定的高度才能看出方法的效果

参考技术A 代码:
scrollTo(0,0)
滚动到页面的0,0位置(不管现在在哪)
其中两个零分别是宽度和高度,可以更改,单位是px,如果都是0的话就是滚动到开始

代码:
scrollBy(0,0)
在现在的基础上滚动0,0
两个零分别是宽度和高度,可以更改,单位是px本回答被提问者采纳

如何用jquery实现页面滚动到指定位置后触发事件的效果?

比如一个页面应该会有30条数据,页面首次加载10条,然后用户向下滚动页面到底端部分时,触发一个事件来读取其他数据。
求这个“触发”的方法。

我了解了一下,大部分的方法都是监控滚动条的移动,当到达底端部分时触发。用jquery有没有方法实现呢?

方法:

$(function()
$(".div_md a").click(function()
$("html, body").animate(
scrollTop: $($(this).attr("href")).offset().top - 100 + "px"
, 1500);
return false;
);
//滚动条滚动到指定位置触发下面事件
var getDiv_md = $(".div_md");
var offSet = getDiv_md.offset().top;
$(window).scroll(function()
if ($(window).scrollTop() > offSet)
$(".div_md").css("position":"fixed","left":"10px","top":"10px","z-index":"2");
else
$(".div_md").css("position":"","left":"0px","top":"","z-index":"");

)
);

1、jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。

2、编程工具

Notepad++:一套有特色的自由软件的纯文字编辑器,有完整的中文化接口及支持多国语言编写的功能。它的功能比Windows中的 Notepad(记事本)强大,除了可以用来制作一般的纯文字说明文件,也十分适合当作编写电脑程序的编辑器。Notepad++ 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组。

Brackets:一个免费、开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境 (IDE工具)。该项目由 Adobe 创建和维护,根据MIT许可证发布,支持Windows、Linux平台。Brackets的特点是简约、优雅、快捷,它的核心目标是减少在开发过程中那些效率低下的重复性工作,例如浏览器刷新,修改元素的样式,搜索功能等等。

JS Nice:一款让经过混淆处理的JavaScript代码可读更好的工具。它使用一种用于JavaScript代码美化的去混淆和去压缩引擎。JSNice采用先进的机器学习和程序分析技术,从可用的开源项目学习命名和类型规律。

参考技术A scrollBottomTest =function() $("#contain").scroll(function() var $this =$(this), viewH =$(this).height(),//可见高度 contentH =$(this).get(0).scrollHeight,//内容高度 scrollTop =$(this).scrollTop();//滚动高度 //if(contentH - viewH - scrollTop <= 100) //到达底部100px时,加载新内容 if(scrollTop/(contentH -viewH)>=0.95) //到达底部100px时,加载新内容 // 这里加载数据.. ); 参考技术B $(window).scroll(function ()
if ($(window).scrollTop() == $(document).height() - $(window).height())
alert('bottom!!');


);

以上是关于js怎么控制网页滚动到指定位置的主要内容,如果未能解决你的问题,请参考以下文章

如何通过JQuery将DIV的滚动条滚动到指定的位置

页面加载时自动滚动到指定位置!如何做

如何用jquery实现页面滚动到指定位置后触发事件的效果

如何用jquery实现页面滚动到指定位置后触发事件的效果?

Selenium WebDriver如何使滚动条滚动到最元素位置

Selenium WebDriver如何使滚动条滚动到最元素位置