0

http://jsbin.com/aguver/17/edit よく検索した結果、このコードを見つけました。アクティブのクラスを設定し、元の場所から削除しています。問題は、2 つのリンクを 1 つだけにする必要があるときに、2 つのリンクを赤に変更していることです。

正規表現を使用すると、次のようなもの/^\w/が機能する可能性がありますが、css セレクターに配置された変数であるため、コードで設計されたとおりではありません。私の目的にはあまりにも漠然とした検索/選択です。

ありがとう。

HTML:

<!DOCTYPE html>
<html>
<head>
    <script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script><meta charset=utf-8 />
<title>demo by roXon</title>
<!--[if IE]>
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style>
  article, aside, figure, footer, header, hgroup, 
  menu, nav, section { display: block; }
  *{margin:0;padding:0;}
  ul{list-style:none;}
  a{text-decoration:none;}
  a.active{color:red;}
</style>
</head>
<body>
  <div>
     <ul id="books">
         <li><a href="nonfiction">Nonfiction</a></li>
         <li><a href="fiction">Fiction</a></li>
     </ul>  
  </div>
</body>
</html>

JS:

var url = 'http://www.domain.com/fiction'; //<-- too similar to nonfiction

//actually it just checks the last character, I need regex maybe

var link = url.split('/').slice(-1);

document.write(url.split('/').slice(-1));

$('#books li a[href$="'+link+'"]').addClass('active');
//Script is supposed to select the active link via the url and giving it a class attribute
4

0 に答える 0