2014-04-13 4 views
0

Мне интересно, есть ли способ сделать последний div недоступным для кликов. У меня есть 10 div, и все они доступны для просмотра. Как вы можете видеть, они исчезают, но я хочу, чтобы последний div исчезал и что-то делал, если щелкнул. Однако я хотел бы отделить последний div и заставить его сделать что-то еще.Есть ли способ сделать последний div недоступным для просмотра?

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

Чтобы было ясно. У меня есть вопросы, и он будет добавлять divs каждый раз, когда мы отвечаем на вопрос и переходим к следующему. Таким образом, этот код будет переходить ко всем отображаемым div. Но я хочу, чтобы последний div не продолжался.

+0

Какой у вас HTML? –

+0

Как насчет: последний ребенок? – ascx

+0

Хм, я сделал коды, чтобы они продолжались на всех div, но это любой способ сделать, чтобы коды продолжались на всех div, кроме последнего? – user3478007

ответ

1

@ пользователь6186 ответ работа. В качестве альтернативы можно поставить тест в случае щелчка:

$(function(){ 
    $(document).on('click', '.questions > div', function(){ 
     if($(this).is(':last-child')){ 
      alert('Last Question'); 
     } else { 
      alert('Regular Question'); 
     } 
    }); 
}); 

Однако, вы можете рассмотреть вопрос о добавлении класса «последний вопрос» к финальной части сНа сервера вместо.

2

Нравится?

$("div.questions > div:last").unbind('click'); 

Если вы используете on(), то вы можете сделать $("div.questions > div:last").off('click');

1

попробовать это:

Чтобы добавить щелчок слушателя все дивы, кроме последнего:

$(document).on('click', '.questions > div:not(:last-child)', function(){ 
    alert('Regular Question'); 
}); 

Чтобы добавить прослушиватель кликов только к последнему div

$(document).on('click', '.questions > div:last-child', function(){ 
    alert('Specific Question'); 
}); 
+0

Первый код продолжит это предупреждение («Обычный вопрос»); на всех divs кроме последнего? – user3478007

+0

да, это правда, если вы хотите, чтобы все divs делали то же самое и просто добавляли определенное действие рядом с регулярным действием, просто удалите ': not (: last-child)' – user6186

+0

, последний из них продолжит что-то еще в последнем коде? – user3478007

Смежные вопросы