2010-06-03 266 views
0

我有这种情况:使用ajax查询我获取一些数据项并将它们推入ul元素作为li元素。我使用$("ulele").append(new_li_item)。我用下面写我自己的自定义滚动此ul元素只要检测到事件:jQuery:防止列表滚动?

$("ulele").animate({scrollTop: '+=' + 200}, 'slow'); 

问题是,当我火了该事件,并由于上述animate功能列表中滚动,我想保留它稳定至少几秒钟。当它向下滚动时,元素仍然被推入,所以无论如何列表都会滚动。我使用下面的方法来添加li元素(已经有display:none属性):

$("#liele").delay(6000 * i).show("slow") 

有没有一种方法可以让我从没有真正停止推元素融入UL列表的活动发生暂停呢?

回答

0

也许试试.delay()? 。

http://api.jquery.com/delay/

像这样:

$( “ulele”)动画({scrollTop的: '+ =' + 200}, '慢')延迟(1000);

+0

对不起。我尝试过但不起作用。事实上,我甚至不知道这是什么意思。我希望能够锁定列表的观点几秒钟就是我的意思。 – Legend 2010-06-03 01:23:31

0

尝试将动画放入函数中,然后在将元素添加到ulele之前删除动画并在获取数据之后再次添加动画。这是做到这一点的一种方式,但从外观来看,这听起来是操作密集型的。

下应更好地工作 - 当您创建新元素,启动了与显示:无和之后被提取使用AJAX调用,更新显示属性内联或怎么过你需要它。这应该比上述做得更好。

+0

感谢您的支持。我只是用一些额外的细节更新了我的问题,以更清楚地说明我是如何做到这一点的。 – Legend 2010-06-03 02:02:33

+0

当您添加新元素时,是否可以删除no.of元素?如果有视频/实现用户界面,它可以更好地理解问题。 – Sairam 2010-06-03 17:32:51