我有一组超链接都链接到其他页面和/或网站,每个链接都有一个类,从1开始逐渐递增,我只希望从“1”级到现在的链接处于活动状态但链接本身仍然可见。
<div>
<a href="http://google.com" class="link 1">LINK 1</a>
<a href="http://google.com" class="link 2">LINK 2</a>
<a href="http://google.com" class="link 3">LINK 3</a>
<a href="http://google.com" class="link 4">LINK 4</a>
</div>
我试过这个,但它不起作用。
var d = new Date(),
day = d.getDate(),
number = $('a.link').attr("class").match(/\d+/);
if (number > day) {
$("a.link").attr("href", "#")
} else {}
我正在尝试更改href而不是禁用链接,以便人们无法通过查看页面源代码来查看地址。
答案 0 :(得分:5)
使用data-*
属性更容易,而不是试图从class
属性中重新编号:
<div>
<a href="http://google.com" class="link" data-day="1">LINK 1</a>
<a href="http://google.com" class="link" data-day="2">LINK 2</a>
<a href="http://google.com" class="link" data-day="3">LINK 3</a>
<a href="http://google.com" class="link" data-day="4">LINK 4</a>
</div>
然后你可以使用.filter()
:
$('a.link').filter(function(){
return parseInt($(this).data('day'),10) > 2 // Use your day logic in place of the hardcoded "2"!
}).attr('href','#');
JSFiddle:http://jsfiddle.net/T2sNF/1/