【问题标题】:Anchor Link to another page on same site锚链接到同一站点上的另一个页面
【发布时间】:2017-11-09 16:33:08
【问题描述】:

我多次查看该网站,但找不到问题所在。我需要从图库页面链接到索引页面,但需要链接到该页面中的特定锚点。

我的索引标题

<!-- Container (About Section) -->
<div id="about" class="container-fluid">
</div>

<!-- Container (Services Section) -->
<div id="portfolio" class="container-fluid text-center">
</div>

那么这里是图库页面上的链接。

<div class="collapse navbar-collapse" id="myNavbar">
<ul class="nav navbar-nav navbar-right">
<li><a href="/index.html">ABOUT</a></li>
<li><a href="/gallery.html">GALLERY</a></li>
<li><a href="/index.html#portfolio">PORTFOLIO</a></li>
<li><a href="store/index.php">STORE</a></li>
<li><a href="/index.html#ordering">ORDERING</a></li>
<li><a href="/index.html#contact">CONTACT</a></li>

【问题讨论】:

  • 您的具体问题是什么?显然,一切都很好(假设您的 index.html 中存在排序和联系人 ID)。你在使用浏览器滚动吗?如果您正在为页面滚动使用某些库(如 iScroll、ionic scroll 或类似的),或者如果您正在将 ids 标签动态添加到您的网站;通过哈希导航可能会失败。
  • 对我来说看起来不错,什么不起作用?
  • 看起来不错,您可以尝试删除“/”吗?所以改为&lt;li&gt;&lt;a href="/index.html#portfolio"&gt;PORTFOLIO&lt;/a&gt;&lt;/li&gt;试试&lt;li&gt;&lt;a href="index.html#portfolio"&gt;PORTFOLIO&lt;/a&gt;&lt;/li&gt;
  • 它只是不加载页面。网址是 www.absolutehtml.com
  • 那是因为你的 javascript

标签: javascript jquery html anchor


【解决方案1】:

由于您的 javascript,您无法在页面中导航。 就目前而言,当您单击另一个页面的锚链接时,它正试图获取不存在项目的偏移量。您可以将脚本更改为类似的内容以防止这种情况发生

$(".navbar a, footer a[href='#myPage']").on('click', function(event) {
    var hash = this.hash;
    if (hash == '' || $(hash).length == 0) return true;

    event.preventDefault();
    $('html, body').animate({
        scrollTop: $(hash).offset().top
    }, 900, function(){
        window.location.hash = hash;
    });
});

【讨论】:

    【解决方案2】:

    查看您的网站,您已将一些听众添加到您的navbar,以便在您单击导航栏上的锚点到所选部分时进行滚动转换。这段代码。

    $(document).ready(function(){
    // Add smooth scrolling to all links in navbar + footer link
        $(".navbar a, footer a[href='#myPage']").on('click', function(event) {
        // Make sure this.hash has a value before overriding default behavior
        if (this.hash !== "") {
            // Prevent default anchor click behavior
            event.preventDefault();
            ....
    

    在那里,您可以避免在单击具有不同于"" 的哈希值的锚点时的标准浏览器行为,因此当您单击图库页面到您的主页时,它可以避免重定向到您的主页。您应该修改此代码以检查目标页面是否与当前页面相同,或者您是否需要转到其他页面。

    【讨论】:

      【解决方案3】:

      尝试使用反斜杠,或复制完整路径。不知道如何使用#。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-29
        • 1970-01-01
        • 1970-01-01
        • 2017-03-05
        • 1970-01-01
        • 2020-09-24
        • 2016-10-26
        相关资源
        最近更新 更多