导航栏中只有锚链接起作用

3

我正在使用一个网站模板,其中一个需要修改的内容是联系链接。在默认模板中,导航栏中的所有链接都是锚链接,指向页面中的不同部分。我想要将联系链接更改为mailto链接,但我发现由于某种原因,导航栏中无法使用外部链接。

我的问题在于,该模板由许多CSS和JS文档组成,我不知道代码的哪个部分会导致这个问题。其他页面区域中可以使用外部链接,但导航栏中却不能。你们有任何想法会导致这种情况发生吗?这样我就能更好地了解到问题的解决方法在哪里。

值得一提的是,代码如下:

    <section id="intro">
        <nav id="nav" style="background:-webkit-canvas(background) repeat;">
            <nav id="nav-1" style="background:-moz-element(#background) repeat;">
            <!-- The content between <span> </span> tags will be hidden on mobile version -->
            <ul class="clearfix">
                <li><a href="#education">Edu<span>cation</span></a></li>
                <li><a href="#portfolio">Por<span>tfolio</span></a></li>
                <li><a href="#experience">Exp<span>erience</span></a></li>
                <li><a href="#contact">Con<span>tact</span></a></li>
            </ul>
            </nav>
        </nav>
    </section>

拥有相关的CSS对于帮助您至关重要。 - j08691
1
当你说“不起作用”时,你能更具体一些吗?当你在那里放置一个mailto:链接时,实际上会发生什么? - Darren Wainwright
我认为最简单的方法是你可以分享一个有问题网站的链接,因为正如你自己所提到的,你不知道哪一部分代码或哪个文件会导致这种行为。 - Marventus
2个回答

1
在元素上添加一个JavaScript或Jquery点击事件处理程序,像这样:
$("a[href=#contact]").on("click", function() {
    //Your code Here...
});

1
感谢您提出的所有建议,但实际上我刚刚从设计师那里得到了回复:
整个导航页面都是使用名为jQuery One Page Nav的jQuery插件作为一系列同一页链接制作的。您可以在此处了解更多信息:

https://github.com/davist11/jQuery-One-Page-Nav

assets/js/custom.curriculum.js 文件中,您可以找到启用此导航的脚本行: $( '#nav ul' ).onePageNav( { scrollSpeed: 400 } ); 根据插件,您可以通过类添加例外情况。因此,假设您希望链接保持其默认操作,则应将“external”类添加到该链接中,然后将JS文件中的代码替换为以下代码,该代码为“external”类添加了例外情况: $( '#nav ul' ).onePageNav( { scrollSpeed: 400, filter: ':not(.external)' } );

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接