简单问题:我的时间栏中有一个禁用的时间栏。 我想点击时间栏上的prev和next按钮。这很好。问题是正在跳过残缺的" 0"按钮。当时间栏为f.e. " 6"单击下一个按钮,他应该转到" 1" -Button。我尝试使用 not()过滤课程,但这对我不起作用:
pr.find('a.time:last:not("time.disabled")').addClass('active_fp');
这是我的小提琴: http://fiddle.jshell.net/2mgj0cr2/44/
问候约翰
答案 0 :(得分:1)
您的其他选择器应为:
$('#timebar a.time:not(".disabled")').first().addClass('active_fp');
在选择器之后链接.first()
方法,以便抓取第一个a.time
元素而不使用disabled
类。
您还必须检查前一个元素是否具有类.disabled
:
if (pr.length === 0 || pr.find('a').hasClass('disabled')) { ... }
答案 1 :(得分:1)
如果您想在开头和之间支持disabled
,请尝试
function follow() {
var next = $('#timebar li a.active_fp').removeClass('active_fp').parent().nextAll(':has(a.time:not(.disabled)):first');
if (next.length == 0) {
next = $('#timebar a.time:not(.disabled):first').addClass('active_fp');
}
next.find('a').addClass('active_fp');
var fp = next.find('a').attr('data-id');
$('#text').html(fp);
}
演示:Fiddle