我很想知道是否有办法让最后一个div无法点击。我有10个div,所有这些都是可点击的。正如你所看到的那样,它们正在逐渐消失,但我希望最后一个div能够淡入并在点击时执行某些操作。但是我想将最后一个div分开并让它做其他事情。
$(".questions").children().hide();
$(" div.questions > div:nth-child("+history[get_number]+")").fadeIn();
说清楚。我有问题,每次我们回答问题并进入下一个问题时都会添加div。因此,此代码将继续显示已显示的所有div。但我希望最后一个div不要继续。
答案 0 :(得分:2)
喜欢这个吗?
$("div.questions > div:last").unbind('click');
如果你正在使用on()
,那么你可以$("div.questions > div:last").off('click');
答案 1 :(得分:1)
试试这个:
向除最后一个div之外的所有div添加一个点击监听器:
$(document).on('click', '.questions > div:not(:last-child)', function(){
alert('Regular Question');
});
将点击侦听器添加到最后一个div
$(document).on('click', '.questions > div:last-child', function(){
alert('Specific Question');
});
答案 2 :(得分:1)
@ user6186答案应该有效。另一种方法是将测试放入点击事件中:
$(function(){
$(document).on('click', '.questions > div', function(){
if( $(this).is(':last-child') ){
alert('Last Question');
} else {
alert('Regular Question');
}
});
});
但是,您可能需要考虑添加一个"最后一个问题"而是改为最终div服务器端。