特定于日期的超链接href更改

时间:2013-11-07 12:43:10

标签: jquery html

我有一组超链接都链接到其他页面和/或网站,每个链接都有一个类,从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而不是禁用链接,以便人们无法通过查看页面源代码来查看地址。

1 个答案:

答案 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/