#jquery
#jquery
Вопрос:
У меня есть флажок, присутствующий внутри div. Когда пользователь нажимает на div (кроме флажка), отображается и скрывается другой div. Это достигается с помощью jQuery. Но моя проблема в том, что когда я нажимаю на флажок, div также показывает эффект скольжения (чего я не хочу). Как предотвратить скольжение div, когда я нажимаю на флажок.
Ответ №1:
Используйте .stopPropagation()
метод для флажка. Если у вашего флажка есть идентификатор thecheckbox
, используйте
$("#thecheckbox").click(function(event){
event.stopPropagation();
});
Ответ №2:
После целого дня борьбы, наконец, я получил решение. Я просто добавляю аргумент к событию в jQuery. Затем проверьте, имеет ли источник события тип «CheckBox», тогда не сворачивайте div, иначе сверните div. Мой код выглядит следующим образом:
$(document).ready(function()
{
//The event handler for the click event of the div.
$('.divClientList').click(function(e)
{
//Check if the event source is other then checkbox,
//then collapse the div, else do nothing.
if (e.target.type != "checkbox")
{
//If the target div content is empty then do nothing.
if ($('.divContent').is(':empty'))
{
}
else
{
$('.divContent').slideToggle('slow');
}
}
});
});