我知道这段代码非常蹩脚,但它工作得非常好'直到现在所以我保留了它。 但是现在我有太多了< li>并且我不能在js中手动添加它们,因为它在wordpress上并且它取决于类别页面所以<李&每次都改变。
我的问题是; 如何保留该动画并使其与未定义的< li>而不必手动添加它们?有没有办法停止滚动条滚动而不使用css overflow-y:hidden?!
这里的演示: http://jsfiddle.net/NdRDh/
非常感谢!希望你能帮助我!!
汤姆
答案 0 :(得分:4)
我建议:
$(document).ready(
function() {
$('li').each(
function(i) {
$(this)
.delay(400)
.animate(
{
'top' : '10px'
}, 1500 + (500*i));
});
});
哦,请注意,您为id
元素的所有重复了同样的li
:这是无效的HTML,如:
id
= 名称[CS]此属性为元素指定名称。该名称在文档中必须是唯一的。
(引自:http://www.w3.org/TR/html401/struct/global.html#h-7.5.2)
参考文献:
答案 1 :(得分:3)
$('li').each(function(i) {
$(this).delay(400).animate({'top': '10px'}, (500*i)+1000);
});
示例小提琴:http://jsfiddle.net/NdRDh/6/
作为旁注,您不能拥有多个具有相同ID的元素
答案 2 :(得分:1)
您可以使用each()
,如下所示:http://jsfiddle.net/Skooljester/NdRDh/1/
答案 3 :(得分:1)
你有id和class swapped:给他们'common'作为类,他们的类名称为id's然后你可以选择它们并用以下方法调用animate:
$('li.common').animate(...);
答案 4 :(得分:0)
试试这个:
$("li").each(function(index) {
$(this).delay(400).animate({'top' : '10px'}), 1000 + 500 * index);
});