我正在研究培训模块,想要检测用户是否点击“第1项”,“第2项”和“第3项”(与订单无关)。当所有项目被点击至少一次时,显示一个按钮以“继续”,这将使用户进入训练的下一部分(超链接)。有没有办法用jQuery做到这一点?
答案 0 :(得分:2)
假设您使用的是多选框:
$('option', '#selectbox').click(function() {
if($('option:selected', '#selectbox').length >= 3)
$('#button').show();
});
基本上只需使用length
属性来定义元素的数量。
答案 1 :(得分:2)
您可以使用单击事件处理程序向单击的元素添加一个类,然后计算页面上类的出现次数。
$('.clickable').on('click', function(){ // item1, item2 etc
$(this).addClass('clicked'); // CLASS TO COUNT
if($('.clicked').length == 3) { // IF 3 HAVE CLASS
// SHOW BUTTON
}
});
.length
返回数组中的数字项(本机javascript),并且$('.selector')
返回页面上的元素数组,但是很多匹配给$()
的选择器(点击类) )它将具有页面上出现的次数。