尝试用.slideUp()
清除元素.html('')
,然后重新填充元素和.slideDown()
。简单的?是的。在职的?不。
在向上滑动完成之前重新填充元素。从本质上讲,你看到魔术师在幕布到位之前就离开了,这破坏了表演。
jsFiddle:http: //jsfiddle.net/Zt6gw/
jQuery
$('#oh_sort').change(function(){
$('#oh_list_cont').slideUp(1000);
$('#oh_list_cont').promise().done(ohReset());
$('#oh_list_cont').slideDown(1000);
});
function getOpenhouse(){
var data = $('#oh_sort').val();
if(data == 'date'){
$('#oh_list_cont').append('WOOOOOOORK!');
}
if(data == 'price'){
$('#oh_list_cont').append('Please?!');
}
if(data == 'city'){
$('#oh_list_cont').append('OMGWTFBBQ');
}
}
function ohReset() {
$('#oh_list_cont').html('');
getOpenhouse();
}
我已经尝试使用 .slideUp() 内置的 [complete](回调?)函数,但是没有填充任何内容,并且第二个幻灯片动画不会触发。