Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

this may be a stupid question as I can't seem to find an answer :P

Is there a way with javascript/jQuery to Target all links on a page ONLY if they link to the current page?

Say i've got a static sidebar on ALL pages, for intents and purposes:

<ul id="sidebar">
    <li><a href="/one">One</a></li>
    <li><a href="/two">Two</a></li>
    <li><a href="/three">Three</a></li>
</ul>

Notice the code for ALL of them is the same. Let's say I'm on "www.domain.com/two" - Is there a way to target

<li><a href="#">Two</a></li>

because it's linking to the current page?

***ANSWERED*****

The guy deleted his answer - but I used it to create this -

var linksToCurrentPage = $('a[href="' + window.location.href + '"]');
if (linksToCurrentPage) {
    $('a').addClass('currently-active');
};

which worked :)

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
236 views
Welcome To Ask or Share your Answers For Others

1 Answer

Try the following:

<!DOCTYPE html>
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>

<ul id="sidebar">
    <li><a href="/one">One</a></li>
    <li><a href="/two">Two</a></li>
    <li><a href="/three">Three</a></li>
</ul>


<script>
var pathname = window.location.pathname;
//$("a:contains('One')").css("color", "red"); // This will make One red (notice capital O)
$("a:contains(pathname)").css("color", "red");

</script>

?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...