function modalClosed(){
$("div#tab" + tabId).find('ul')
.prepend("<li>item</li>")
.hide()
.fadeIn('slow');
}
我希望列表(<li>
)可以预先添加并逐渐淡出,遗憾的是我无法使用$(this)
,上面的代码效果不好,它适用影响所有<li>
。
答案 0 :(得分:1)
这是因为.prepend()
会返回ul
元素而非附加的li
元素,因此您隐藏/显示ul
元素。您可以使用prependTo()
方法撤消逻辑,现在.hide()
和.fadeIn()
将应用于附加元素而不是ul
元素。
$("<li>item</li>").hide()
.prependTo("#tab"+tabId+" ul")
.fadeIn('slow');
答案 1 :(得分:0)
function modalClosed(num) {
$("div#tab" + tabId).find('ul')
.prepend("<li>item</li>")
.hide()
.fadeIn('slow', function() {
// callback function, called when fadeIn has finished
if(num > 1) {
modalClosed(num - 1);
}
});
}
答案 2 :(得分:0)
据我了解你想要在所有礼品上一个接一个地淡出效果。如果这是正确的,请尝试以下方法:
var time=1000;
$("div#tab"+tabId+" ul").prepend("<li>item</li>");
$("div#tab"+tabId+" ul li").each(function() {
$(this).hide();
$(this).fadeIn(time);
time+= 800;
});