导航菜单中的外部URL不起作用

External URL in Nav menu not working

本文关键字:URL 不起作用 外部 菜单 导航      更新时间:2023-09-26

我正试图获得一个菜单链接以重定向为target=_blank,但它似乎不起作用。如果我把这个代码放在它自己的html文件中,它就可以工作,但当它在我的网站上时就不行了

这是我遇到问题的"示例"菜单链接。

<!-- Nav -->
  <nav id="navigation" class="animated fadeInUpBig shadow">
    <ul id="nav">
      <li class="current shadow"><a href="#section-1">Home</a></li>
      <li class="shadow"><a href="#section-2">About</a></li>
      <li class="shadow"><a href="#section-3">Services</a></li>
      <li class="shadow"><a href="#section-4">Events</a></li>
      <li><a href="http://www.google.com" target="_blank">Example</a></li>
      <li class="shadow"><a href="#section-6">Contact</a></li>
    </ul>

以下是我的JS 中提到目标的所有内容

getHash: function($link) {
            return $link.attr('href').split('#')[1];
        },
getPositions: function() {
            var self = this;
            var linkHref;
            var topPos;
            var $target;
            self.$nav.each(function() {
                linkHref = self.getHash($(this));
                $target = $('#' + linkHref);
                if($target.length) {
                    topPos = $target.offset().top;
                    self.sections[linkHref] = Math.round(topPos) - self.config.scrollOffset;
handleClick: function(e) {
            var self = this;
            var $link = $(e.currentTarget);
            var $parent = $link.parent();
            var newLoc = '#' + self.getHash($link);

快速搜索这些函数名会让我相信您使用的是jQuery One Page Nav,这意味着导航一个只有内部链接的单页网站
根据jQuery One Page Nav的自述文件,您需要在链接中添加一个名为"external"的类,以便使外部页面链接发挥作用:

<li><a href="http://google.com" class="external">Some other link</a></li>

将其弹出到一个新的选项卡中应该是一个简单的调整:

<li><a href="http://www.google.com" class="external" target="_blank">Example</a></li>