<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);
мне нужно найти значение идентификатора активного класса, его показывая неопределенное значение
использовать:
$('li.active').data('id')
var val = $('li.active').attr('data-id');
alert(val);
В вашем случае вы также можете использовать:
var val = next.attr('data-id');
Поскольку вы назначаете класс активным для объекта 'next'
пытаться
alert($(".active").attr(" data-id"));
У вас уже есть цель внутри переменной, поэтому используйте ее:
var val = next.addClass('active').data("id");
$(this)
в вашем случае - это window
так как вы находитесь в функции, вызванной таймаутом.
$(this).attr('data-id')
.