我不知道如何获得被点击元素的类值。
当我使用下面的代码时,我每次都得到“node-205”。
jQuery:
.find('> ul')
.tabs(
{
selectedClass: 'active',
select: function (event, ui) {
//shows only the first element of list
$(this).children('li').attr('class');
},
cookie: { expires: 0 },
fx: fx
})
HTML:
<ul class="tabs">
<li class="node-205"></li>
<li class="node-150"></li>
<li class="node-160"></li>
</ul>
我看到了这个问题,所以我想我可以再展开一点。这是对@SteveFenton的想法的扩展。与其将click事件绑定到每个li元素,不如从ul向下委派事件会更有效。
jQuery 1.7及更高版本
$("ul.tabs").on('click', 'li', function(e) {
alert($(this).attr("class"));
});
文档:内()
jQuery 1.4.2 - 1.7
$("ul.tabs").delegate('li', 'click', function(e) {
alert($(this).attr("class"));
});
文档:.delegate ()
作为jQuery 1.3 - 1.4的最后一招
$("ul.tabs").children('li').live('click', function(e) {
alert($(this).attr("class"));
});
or
$("ul.tabs > li").live('click', function(e) {
alert($(this).attr("class"));
});
文档:.live ()