<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值,它显示未定义的值
答案 0 :(得分:2)
使用:
$('li.active').data('id')
答案 1 :(得分:0)
var val = $('li.active').attr('data-id');
alert(val);
答案 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"));