【问题标题】:Anchor click and keeping page position?锚点点击并保持页面位置?
【发布时间】:2012-11-11 13:40:24
【问题描述】:

在我的页面中有一些没有链接的锚点,像这样:

<a href="#">Anchor</a>

当我单击页面底部的锚点时,页面滚动到顶部。如果我点击链接,我想保持页面位置。我怎样才能做到这一点。 (没有js对我更好)

我希望,我可以解释一下。

提前致谢。

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    你仍然必须使用 JS,但你可以内联:

    <a href="javascript:void(0);">Test</a>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​
    

    演示:http://jsfiddle.net/7ppZT/

    或者,您可以捕获事件:

    $('a[href^="#"]').click(function(e) {
        e.preventDefault();
    });
    

    【讨论】:

    • @AliRiza 仅供参考,您需要 JQuery 作为替代方案。
    • @Steve,是的,有很多这样的链接。
    【解决方案2】:

    您可以将锚点放置在页面中您想要的任何位置。

    <a href="#stophere">Anchor</a>
    
    <a id='stophere'>Bottom Of Page</a>
    

    然后,链接将转到指定的锚点。只要在你想停止的地方坚持那个元素。

    【讨论】:

    • 没错,但您应该使用 id 而不是名称
    • 谢谢,但我不想去特别的地方。我希望它保持它的位置。
    • @F.Müller - 啊,你是对的。谢谢,我不知道。 stackoverflow.com/questions/484719/html-anchors-with-name-or-id
    • @AliRızaAdıyahşi - 你必须告诉页面去那个位置。您可以使用命名锚(或 Javascript)来做到这一点。也许您想在您的问题中添加javascript 标签?
    • @AliRızaAdıyahşi 的想法是给链接一个 id,然后你让链接指向它自己...
    【解决方案3】:

    为了解决这个问题,我使用了这段代码,它是脚本解决方案,但适用于所有浏览器

    <a href="javascript:void(0)">Anchor</a>
    

    【讨论】:

      【解决方案4】:
      <a href="#noname">Anchor</a>
      

      确保noname 没有用于任何标记的id 属性或a 标记的name 属性。

      【讨论】:

        【解决方案5】:

        你必须设置一个名字,然后像这样在#之后添加名字

        <a name="adsf" href="#adsf">Anchor</a>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-03-22
          • 2013-01-15
          • 2019-09-28
          • 2015-12-08
          • 1970-01-01
          • 1970-01-01
          • 2013-03-23
          • 2014-02-22
          相关资源
          最近更新 更多