вот мой fiddleПочему функция click не работает?
Функция «.item», которая показывает «.pull_down_content», не всегда работает, почему это так? Я обнаружил, что если вы нажмете на первую «плитку», это будет нормально работать, и пока это будет открыто, следующая плитка по-прежнему работает нормально, но если вы вернетесь к исходной плитке, функция нажатия перестанет работать, и только зависание будет работать ?
Почему это?
здесь является частью моего кода ..
$(this).children('.item').on('mouseenter mouseleave click', function(e) { e.stopPropagation();
if ($('.timelineTile').hasClass("clicked")) {
if (!$(this).data('clicked')) {
var Height = e.type==='mouseenter' ? '60px' : e.type==='click' ? '300px' : '0px';
$(this).siblings('.pull_down_content').stop().animate({'height': Height}, 300);
$(this).siblings('.pull_down_content').children('.inner').css({'display': 'block'}, 300);
if (e.type==='click') $(this).data('clicked', true);
}else{
if (e.type==='click') {
$(this).data('clicked', false);
$(this).siblings('.pull_down_content').stop().animate({'height': '0px'}, 300);
$(this).siblings('.pull_down_content').children('.inner').css({'display': 'none'}, 300);
}
} }
});
Просто взглянул на код, но похоже, что вы добавляете дополнительные события click для детей каждый раз, когда вы нажимаете '' .timelineTile''. Вы должны перенести вышеуказанный код за пределы события «.timelineTile». По крайней мере, удалите существующие события перед их повторным добавлением. –
ahh не может поверить, что это было просто спасибо! –