如何查找活动类data-id

时间:2014-02-20 14:27:13

标签: jquery

<ul class="deal-menu">
   <li class="active" data-id="today-spl"><a href="#" class="first">Special<span class="active"></span></a></li>
   <li class="" data-id="today-deal"><a href="#">Deal</a><span></span></li>
   <li class="" data-id="today-spl"><a href="#" class="last">TDeal<span></span></a></li>
</ul>

我的jquery代码是

function addcls() {
        var current = $('.deal-menu li.active').removeClass('active'),
            next = current.next().length ? current.next() : current.siblings().filter(':first');
        next.addClass('active');
        var val = $(this).data("id");
        alert(val);
    };

 setInterval(function () {
        addcls();
       }, 3000);

我需要找到活动类data-id值,它显示未定义的值

5 个答案:

答案 0 :(得分:2)

使用:

$('li.active').data('id')

答案 1 :(得分:0)

var val = $('li.active').attr('data-id');
alert(val);

http://jsfiddle.net/MHdN9/

答案 2 :(得分:0)

在您的情况下,您也可以使用:

var val = next.attr('data-id');

因为您将类激活分配给对象'next'

答案 3 :(得分:0)

您已将目标置于变量中,因此请使用它:

var val = next.addClass('active').data("id");
在您的情况下,

$(this)window,因为您处于超时调用的函数中。

答案 4 :(得分:0)

alert($(".active").attr(" data-id"));