这是我的fiddle
显示'.pull_down_content'的'.item'点击功能并不总是有效的原因是什么? 我发现,如果你点击第一个'瓷砖'这将工作正常,当它打开时点击下一个瓷砖仍然可以正常工作,但如果你然后回到原始瓷砖点击功能停止工作,只有悬停工作?
这是为什么?这是我的代码的一部分..
$(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);
}
} }
});
答案 0 :(得分:1)
每次点击“.timelineTile”时,您似乎都会在子项上添加其他点击事件。您应该将上述代码移到'.timelineTile'click事件之外。至少在重新添加之前删除现有事件。