如何使用javascript获取我们知道其偏移顶部的元素

如何使用javascript获取我们知道其偏移顶部的元素,javascript,jquery,dom,dom-events,Javascript,Jquery,Dom,Dom Events,假设我们知道一个特定元素的偏移顶部,我们想要得到位于该点的元素,那么有没有办法得到它呢 例如,我们有一个DOM元素,它的偏移量top=6000,我们希望找到位于该偏移量顶点的元素 例如: <ul> <li>first list</li> <li>second list</li> <li>third list</li> </ul> <h3>Skill

假设我们知道一个特定元素的偏移顶部,我们想要得到位于该点的元素,那么有没有办法得到它呢

例如,我们有一个DOM元素,它的偏移量top=6000,我们希望找到位于该偏移量顶点的元素

例如:

  <ul>
     <li>first list</li>
     <li>second list</li>
     <li>third list</li>
  </ul>
  <h3>Skills:</h3>
      <p>This are my skills. xyz, abc, pqr</p>
  • 第一名单
  • 第二份名单
  • 第三名单
技能: 这是我的技能。xyz,abc,pqr

现在,让我们假设
元素的抵消10,我们希望整个元素的意思是
,这是我的技能。xyz、abc、pqr

,仅使用其偏移量。

如中所述,无法查询应用了特定样式的元素。您可以查询页面中的所有元素并循环它们,检查它们的样式,但这将导致大量开销


不过,如果您可以根据父元素、类型等内容缩小可能的元素范围,这可能是可行的。

我的问题似乎是寻找一个特定点的元素。如果是这样,你可以使用

设x=10;
设y=140;
设el=document.elementFromPoint(x,y);
el.style.background=“红色”;
//或$(el.css(“背景”、“红色”)
  • 第一名单
  • 第二份名单
  • 第三名单
技能:
这是我的技能。xyz、abc、pqr

有时,此代码没有搜索该页面中的所有元素,我不知道这背后的原因,但它与元素不匹配。有什么解决办法吗?例如:在上面的示例中,我想获取
p
元素,但无法获取该元素哪个代码?
document.elementFromPoint()
始终只返回最顶层的元素。
findChildrenWithOffset()
函数应返回指定位置内的所有元素。请注意,
$.last()
调用将删除除最上面的元素之外的所有元素。如果删除此行,则所有图元都将位于该位置。我修改了上面的例子来指出这一点。如果你没有得到元素,你的坐标可能是错误的。对于这两个函数,元素必须从坐标的上方开始,在坐标的下方结束。我正在使用
findChildrenWithOffset(parent,offset\u top)
函数,在这里我没有得到所有元素我得到了它,它完成了,我使用
document
而不是jquery,它成功了,感谢您的帮助