0

我有一个带有动画滚动的 div,它包含数百个使用append().

每个 div 都有自己唯一的 id,我需要在动画滚动停止几毫秒后获取视图内所有 div id 的列表。

一旦我有了 ID,我就可以调用一个 php 脚本来动态地将适当的内容附加到每个 ID 上。

我看过这篇文章,虽然它很有帮助,但您需要先知道 id 名称,并且每个都有一个事件侦听器,这意味着数百个事件侦听器。

我可以在可见区域的顶部和底部获得内部包装 div 的位置。这会给我一个搜索范围,但是我如何搜索该区域中的任何 div?

还是有其他方法?

4

1 回答 1

0

一种可能性:http:
//jsfiddle.net/Hwhrw/2/

$("#wrapper").children("div:visible").css("background-color", "#00CC00");

var $sc = $('#scrollable');
$sc.scrollTop(Math.random() * $('#wrapper').height());
var ids = [];
$('.abc').each(function() {
    var c = $(this).position().top + $(this).height() / 2;
    if (c > 0 && c < $sc.height()) {
        $(this).css('background-color', 'blue');
        ids.push($(this).attr('id'));
    }
});
alert(ids);​

为简单起见,我使用 .abc div 的中心点进行计算。

于 2012-04-06T14:52:14.613 回答