【问题标题】:links will not work in fixed nav bar链接在固定导航栏中不起作用
【发布时间】:2016-05-01 09:04:12
【问题描述】:
我目前正在处理带有滚动导航栏的页面。该栏滚动正常。但是,当我尝试将其链接到其他内容时,它不起作用。实际上,悬停效果不起作用。页面在这里:http://www.jescdesigns.com/clients/rp/
一旦您向下滚动到社交媒体图标,导航栏就会出现,如我所愿。当您将鼠标悬停在链接上时,主页链接不会改变颜色,也不会转到 Facebook,而关于链接将在我将其上传到网络后改变颜色,但链接仍然无效。我觉得我快疯了,并尝试更改锚的 ID,但这仍然无法解释为什么 Facebook 链接不起作用。任何帮助将不胜感激。
我的代码可以在这里找到:http://bit.ly/1S4X0zu我很抱歉它是如何在那里设置的,但我刚刚创建了一个帐户,我不太熟悉如何让 jquery 在那里工作,我觉得是显示我的代码的最简单的方法,而不会使这个页面尽可能长。
【问题讨论】:
标签:
jquery
css
hyperlink
menu
anchor
【解决方案1】:
错误出现在您的 javascript 中:
$('#menu a, #fixedbar a').on('click', function(e) {
e.preventDefault();
});
e.preventDefault();在锚标记上可防止链接打开。
【解决方案2】:
你的 css 有问题:
您的链接问题与您的 jquery 事件 e.preventDefault() 有关。删除它,它会工作!
添加此代码:
p.menu_left a {
color: white;
}
在这个 css 上删除颜色:白色:
#menu a:visited {
text-decoration: none;
/* color: #FFF; */
}
【解决方案3】:
下面的事情会阻止你改变颜色,并且不允许点击链接。
首先您访问了链接设置颜色#FFF,因此,它在访问链接时始终显示为白色,而其他链接则没有,因为其他锚标签没有网址。您需要将其删除。
#menu a:visited {
text-decoration: none;
color: #FFF; //Here.
}
在您的实时链接中,您第二次被阻止关注facebook.com。
<a href="http://www.facebook.com" target="blank">HOME</a>
这应该是
<a href="http://www.facebook.com" target="_blank">HOME</a>
这里target="blank" 应该是target="_blank"。
并且在 JSfiddle 中 e.preventDefault(); 也阻止转到 facebook.com
$('#menu a, #fixedbar a').on('click', function(e) {
// e.preventDefault(); //Remove it
});
Working Fiddle
【解决方案4】:
将某个类分配给您要排除的菜单项以防止默认操作,然后在 jquery 中添加一个非选择器运算符,如下所示。
我已将 newClass 添加到我想要按原样运行的那些锚标记中。
$('#menu a, #fixedbar a').not(".newClass").on('click', function(e) {
e.preventDefault();
});
e.preventDefault();在锚标记上可防止链接打开。
例如,将 class="newClass" 添加到 HOME 的锚标记中。