0

我正在寻求有关 jQuery 问题的帮助。我的网站带有导航栏,目前当您将鼠标悬停在其中一个导航栏链接上时,它会改变颜色。我想要它做的是当你点击一个链接并转到另一个页面时,我希望当前页面链接保持悬停颜色,即使我再次将鼠标悬停在它上面。所有其他链接都应该是默认颜色,除非它们被悬停在上面(然后它们应该改变颜色)。

以下是该页面的链接作为示例: http ://chrisliaw.net63.net/portfolio/

主页链接应该已经是突出显示的颜色,但是当我将鼠标悬停在它上面然后将鼠标移开时,它会变为默认的灰色。

有没有人有什么建议?

4

1 回答 1

0

OO ...我使用一些 IF 语句完成了此操作。您可以通过 2 种方式执行此操作: 1. 使用 Js 在您当前所在的页面上查看 .. 并为该链接提供一些类 2. 用户 PHP 进行此验证

这里有些例子:

使用 JS:

<div id="menu">
<a href="#" id='home-page'>Home</a>
 <a href="#" id='about-page'>About</a>
 <a href="#" id='some-page'>some page</a>
</div>

var sPath=window.location.pathname;
 var sPage = sPath.substring(sPath.lastIndexOf('/') + 1);
  if(sPage == "home.html")
   {
     $("#menu a").removeClass("Active-Link"); // reset all links
     $("#home").addClass("Active-Link"); // get current page link the class
   }

使用 PHP

  <div id="menu">
    <a href="#" id='home-page' <?php if(basename($_SERVER['PHP_SELF']) == "home.html"){ echo " class='current-page' ";}?> >Home</a>
     <a href="#" id='about-page' <?php if(basename($_SERVER['PHP_SELF']) == "home.html"){ echo " class='current-page' ";}?>>About</a>
     <a href="#" id='some-page' <?php if(basename($_SERVER['PHP_SELF']) == "home.html"){ echo " class='current-page' ";}?>>some page</a>
    </div>

希望,这是您想要的代码.. :) 试试看 :)

于 2013-09-11T21:14:57.173 回答