0

jQueryの問題について助けを求めています。私のサイトにはナビゲーション バーがあり、現在、ナビゲーション バーのリンクの 1 つにカーソルを合わせると、色が変わります。私がやりたいのは、リンクをクリックして別のページに移動したときに、現在のページのリンクをもう一度ホバーしてもホバーした色のままにしたいということです。他のすべてのリンクは、ホバーされていない限り、デフォルトの色にする必要があります (その後、色が変わります)。

例として、ページへのリンクを次に示します: http://chrisliaw.net63.net/portfolio/

ホーム リンクは既に強調表示されているはずですが、その上にマウスを置いてからマウスを離すと、デフォルトの灰色に変わります。

誰か提案はありますか?

4

1 に答える 1

0

OO...これはいくつかのIFステートメントで行いました..これは2つの方法で行うことができます.

ここではいくつかの例を示します。

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 に答える