请问 js要判断页面中是否已经到达锚点的位置

时间:2022-07-09 09:02:44
在一个页面中 总共有4个div 和4个锚点,当浏览器的最顶部到达其中一个锚点时,其中一个div就变颜色,到达下一个锚点时,另一个div就变颜色
主要是怎么判断浏览器顶部是否到达锚点 .. 

6 个解决方案

#1


直接在跳转描点的事件函数里面写就行了吧

#2


可以用计算样式获得你要的锚点的位置  添加window.onscroll事件 检测scrollTop是否和那个锚点的位置相同试试

#3


楼主是要实现类似章节的功能吧。。可以参考这个: jquery实现章节目录效果

#4


引用 1 楼 wzs_xyz 的回复:
直接在跳转描点的事件函数里面写就行了吧


事件?没有写事件哦:
在页面中有一个锚点<div name="name" id="name"></div>
也在这个页面中有个链接<a href="#name">点击这里跳转到锚点name</a>

就这样就可以跳转了呀.. 

#5


引用 2 楼 zzgzzg00 的回复:
可以用计算样式获得你要的锚点的位置  添加window.onscroll事件 检测scrollTop是否和那个锚点的位置相同试试


这样子判断会不会不太准确,因为scrollTop计算的是距离,单位是px(像素),可是如果计算锚点在页面中的某个像素的话,会不会让页面非常死板。

#6


引用 3 楼 showbo 的回复:
楼主是要实现类似章节的功能吧。。可以参考这个: jquery实现章节目录效果


是的 差不多是这个效果,不过好复杂啊 看不懂,有没有最基础的代码? 

#1


直接在跳转描点的事件函数里面写就行了吧

#2


可以用计算样式获得你要的锚点的位置  添加window.onscroll事件 检测scrollTop是否和那个锚点的位置相同试试

#3


楼主是要实现类似章节的功能吧。。可以参考这个: jquery实现章节目录效果

#4


引用 1 楼 wzs_xyz 的回复:
直接在跳转描点的事件函数里面写就行了吧


事件?没有写事件哦:
在页面中有一个锚点<div name="name" id="name"></div>
也在这个页面中有个链接<a href="#name">点击这里跳转到锚点name</a>

就这样就可以跳转了呀.. 

#5


引用 2 楼 zzgzzg00 的回复:
可以用计算样式获得你要的锚点的位置  添加window.onscroll事件 检测scrollTop是否和那个锚点的位置相同试试


这样子判断会不会不太准确,因为scrollTop计算的是距离,单位是px(像素),可是如果计算锚点在页面中的某个像素的话,会不会让页面非常死板。

#6


引用 3 楼 showbo 的回复:
楼主是要实现类似章节的功能吧。。可以参考这个: jquery实现章节目录效果


是的 差不多是这个效果,不过好复杂啊 看不懂,有没有最基础的代码?