在jQuery中,选择位于较小div窗口内的元素

在jQuery中,选择位于较小div窗口内的元素,jquery,position,coordinates,offset,Jquery,Position,Coordinates,Offset,我有一个无序列表,它是较小父分区中的子分区,在第一个分区中滚动。如何选择当前在第一个分区窗口中可见的子分区 我尝试的是使用父容器和elementFromPoint的jQuery偏移坐标,我从 但是,这会使元素返回一个更高的项。所以我试着添加到ycoo,但结果什么也没有返回 有人有别的解决办法吗?有问题的页面是我使用此插件选择可见元素: 它在视口中添加了伪选择器:以便您可以这样选择: $("li:in-viewport") 要使其应用于父元素而不是窗口,请在此处获取修改后的源代码: 为了这样的生

我有一个无序列表,它是较小父分区中的子分区,在第一个分区中滚动。如何选择当前在第一个分区窗口中可见的子分区

我尝试的是使用父容器和elementFromPoint的jQuery偏移坐标,我从

但是,这会使元素返回一个更高的项。所以我试着添加到ycoo,但结果什么也没有返回


有人有别的解决办法吗?有问题的页面是

我使用此插件选择可见元素:

它在视口中添加了伪选择器:以便您可以这样选择:

$("li:in-viewport")
要使其应用于父元素而不是窗口,请在此处获取修改后的源代码:

为了这样的生活

(function($, window) {
    //bunch of code...
})(jQuery, "#menuholder1");

menuholder1是选择父元素的查询。

您要求浏览器在某个位置查找元素的方法对我来说有点尴尬。你知道每个LI元素的高度,以及它的容器的滚动顶部位置,所以你可以自己计算哪个元素在视图中的某个位置,不是吗?同意@schellmax,代码也会更容易阅读。再看看position Method,我找到了那个插件,但如果元素在浏览器窗口中,但不在父div的可见部分,它会在视口中应用吗?对我来说,它会返回父容器中的所有li元素。您可以在站点上查看控制台日志。抱歉,稍微修改源代码即可修复此问题。我发布了一个解释。嗯,很有希望,但我现在没有定义…它必须是直系父母吗?最终修复!在从窗口切换到父窗口时,我忘记使用偏移量而不是滚动。
(function($, window) {
    //bunch of code...
})(jQuery, "#menuholder1");