如果您缓慢地执行操作(打开/关闭答案),一切运行正常,但如果您开始快速点击一个问题,一切都会搞砸!这是我第一次尝试用 jQuery 写东西……你能帮我找出我做错了什么吗?这是 jsfiddle 中的工作示例:http: //jsfiddle.net/cp4Jd/3/
这是jQuery函数:
$('.expand').each(function(){
var reducedHeight = $(this).height();
$(this).css('height', 'auto');
var fullHeight = $(this).height();
$(this).height(reducedHeight);
$(this).data('reducedHeight', reducedHeight);
$(this).data('fullHeight', fullHeight);
}).click(function() {
$(this).animate({height: $(this).height() == $(this).data('reducedHeight') ? $(this).data('fullHeight') : $(this).data('reducedHeight')}, 500);
$('.container').animate({height: $(this).height() == $(this).data('reducedHeight') ?
($('.container').height() + $(this).data('fullHeight') - $(this).data('reducedHeight')) :
($('.container').height() - $(this).data('fullHeight') + $(this).data('reducedHeight'))}, 500);
($(this).height() == $(this).data('reducedHeight')) ?
($(this).find('.menu_ico').attr('src', 'img/menu_minus.png')) :
($(this).find('.menu_ico').attr('src', 'img/menu_plus.png'));
}
);
谢谢你。