首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何让链接转到页面上的下一个锚点,而不知道锚点名称?

如何让链接转到页面上的下一个锚点,而不知道锚点名称?
EN

Stack Overflow用户
提问于 2012-11-05 11:39:22
回答 2查看 2.3K关注 0票数 1

我在页面的顶部有一个按钮,我想对它进行编码,以继续到下一个锚点,而不管它是什么。实际上,我想做下一步/上一步按钮,转到下一个和上一个锚点。此按钮位于静态框架上,因此理想情况下,它应该滚动页面的其余部分。

任何建议都是很棒的。同样,我不知道锚是什么,这更像是使用通用按钮的章节导航。

似乎在dom中找到下一个锚对象是可行的,但我不是jquery或javascript的高手。

EN

回答 2

Stack Overflow用户

发布于 2012-11-05 11:48:30

代码语言:javascript
运行
复制
var index = -1;

$('.next').click(function() {
   index++;
   $(window).scrollTop($('a').eq(index).position().top);

});
$('.previous').click(function() {
   index--;
   if(index < 0) { index = 0;}

   $(window).scrollTop($('a').eq(index).position().top);
});
票数 1
EN

Stack Overflow用户

发布于 2012-11-05 11:46:28

一个好的解决方案是使用一个类来设置‘当前’锚(也许用class = 'current‘对页面上的第一个锚进行硬编码),然后使用jquery遍历dom并选择下一个或上一个锚。假设你有‘下一步’和‘上一步’按钮,你可以这样做:

代码语言:javascript
运行
复制
<script type="text/javascript">

  $('.next').click(function(e){
    e.preventDefault();
    var current_anchor = $('a.current');
    var next_anchor = current.next('a');
    $('body').animate({scrollTop:next_anchor.offset().top});
  })

  $('.previous').click(function(e){
    e.preventDefault();
    var current_anchor = $('a.current');
    var previous_anchor = current.prev('a');
    $('body').animate({scrollTop:previous_anchor.offset().top});
  })

</script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13225621

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档