使用下划线一个接一个地替换每个项目(li)
fadein each item (li) one after another using underscore
我使用下划线显示JSON文件中<li>
项的列表,与其一次显示所有项,不如一个接一个地淡入。我怎样才能做到这一点?
for (var j=0; j<rc.length; j++) {
%>
<ul>
<li class="productTile" data-id="<%= rc[j].id %>">
<img src="<%= image %>" alt=""/>
<h3>Demo<%= rc[j]["name"] %></h3>
<p><%= rc[j].price.formatted %></p>
</li>
</ul>
<%
}
};
%>
当循环时,要一个接一个地显示li元素,只需设置一个递增的超时:
var delay = 500;
for (var j=0; j<rc.length; j++) {
setTimeout(function(){
//fadeIn my <li>
}, delay*j)
}
使用display: none
样式一次创建所有div,然后使用库async
编写以下内容:
// an array with all the ids
var ids = [...list of li ids...];
// handy async iterator
async.eachSeries(ids, fadeIdIterator, function(err){
if(err){
console.log('Something gone wrong');
}
});
// this function will do the job for each element
function fadeInIterator(id, next){
$('#'+id).fadeIn('slow', next);
}
您也可以使用jQuery编写所有内容,但使用此库编写异步内容要容易得多。
只是为了给出一个仅underscore
的替代方案:
function fadeInIterator(id){
return function(next) { $('#'+id).fadeIn('slow', next); };
}
// an array with all the ids
var ids = [...list of li ids...];
// this array will hold the callbacks
var fades = _.map(ids, function(id){ return fadeInIterator(id); });
_(fades).reduceRight(_.wrap, function() { console.warn('done') })();
对于underscore
异步替代方案,我在这里查看了
相关文章:
- 一个接一个地淡出每一个li
- 仅在具有相同类的一个 li 上预览文本
- 如何使用 jQuery 选择上一个 LI
- 当单击不同的li时,jQuery显示一个li
- slideToggle()使第一个li a在单击时跳转
- 当点击一个li中的图标时,我如何确定它是否是ul中的第一个li
- 通过使用jQuery和JavaScript单击另一个LI来删除一个LI
- 同时为一个 Li 元素设置类“活动”
- j查询悬停问题 - 最后一个 li 元素保持悬停状态
- 带有缩略图的轮播,在轮播旋转时将类添加到下一个 LI
- 如何从特定点到达下一个 li a
- 我已经在我的ul中添加了一个li,虽然它可以工作,但它会导致错误
- 手风琴我想更改第一个 li 边框半径和最后一个 li 边框半径,我该怎么做请帮助我.
- 目标最后一个 LI Javascript 然后操作
- jQuery 如何获取第一个 LI 父级
- 当移动到最后一个li时,返回到第一个li(使用Jquery滚动到下一个)
- 将li一个放在另一个之上,在去除最后一个li时,每li's会下降
- 针对DOM的前一个li元素不起作用
- 有人能理解为什么我的jquery函数上下滑动在我的第一个li标签上不能正常工作吗
- 如何使用javascript只选择一个li元素