我将DOM附加到区间中的某个元素,我想让它淡入,但它似乎首先出现,然后消失,然后才会淡入淡出。
var el = document.getElementById('cont');
el.innerHTML = '';
var toAppend = getElementsToAppend();
$(el).hide().append(toAppend).fadeIn(300);
我该如何顺利地完成这项工作?
答案 0 :(得分:1)
首先,您似乎混合了原生JS和jQuery方法。我建议尽可能坚持使用其中一个。另请注意,您在fadeIn()
上调用了$(el)
,而不是在附加到DOM的内容上。
假设elementsToAppend()
返回一个DOMElements数组,您可以将它们全部放在一个jQuery选择器中并在它们上面调用hide()
,然后在追加后调用fadeIn()
。试试这个:
var $toAppend = $(getElementsToAppend()).hide();
$('#cont').empty().append($toAppend);
$toAppend.fadeIn(300);