有没有办法让最后一个div不可点击

时间:2014-04-13 16:32:17

标签: javascript jquery css

我很想知道是否有办法让最后一个div无法点击。我有10个div,所有这些都是可点击的。正如你所看到的那样,它们正在逐渐消失,但我希望最后一个div能够淡入并在点击时执行某些操作。但是我想将最后一个div分开并让它做其他事情。

$(".questions").children().hide();
$(" div.questions > div:nth-child("+history[get_number]+")").fadeIn(); 

说清楚。我有问题,每次我们回答问题并进入下一个问题时都会添加div。因此,此代码将继续显示已显示的所有div。但我希望最后一个div不要继续。

3 个答案:

答案 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服务器端。