5

我需要能够将当前选择器存储在当前视口中,然后 10 秒检查它们是否仍在用户当前视口中。

我对此的解决方案是将选择器存储在一个数组中,然后在 10 秒内将旧选择器与新选择器进行比较,看看是否有任何匹配。如果他们这样做……做点什么。

所以我相信使用 .each 并构建数组,除非有人对此有更优雅的解决方案?

$('.gridContainers:in-viewport')

这将返回一个标准选择器。

4

3 回答 3

16

Calling $(selector) returns an array-like jQuery object, not an actual JavaScript array, though for the purposes of what they're trying to do converting it to an actual array may be unnecessary.

This is how one would turn a selector into an native Javascript array.

$(selector).toArray()

Jquery.toArray()

于 2012-09-10T15:39:37.130 回答
1

使用ES6

Array.from($(selector)); // return JS array 
于 2016-08-05T10:52:00.553 回答
0

试试下面的 FIND 方法:

$('element').find('selection');

这会将所有选定的元素提供给 Array。希望这可以帮助

于 2012-09-10T15:45:27.090 回答