3

我正在制作一个应该在帖子中测量距离的脚本。例如,如果我有三个帖子:

  • 帖子1:两行文字,然后是我想看的图像。
  • 帖子2:只是我想看到的图像。
  • 帖子3:我想看到的图像后跟两行。

我想要这个的原因是因为我认为 Tumblr 在他们的描述中显示了太多的废话。我正在制作一个 chrome 扩展,它将裁剪图像周围的所有废话,这样你就不必滚动了。在每个帖子上都会出现一个按钮来查看整个帖子。

到今天为止,效果很好!有了getBoundingClientRect我可以从窗口获得顶部、左侧、底部和右侧的偏移量。只有1个问题。我不能立即为页面上的所有帖子执行此操作,因为如果帖子距离文档的可见部分(您在浏览器中查看的部分)700px 或更多,则 GBCR 提供的所有值将是0。

这些值无效,并且可能为零,因为帖子未在屏幕上呈现。如果我滚动,我可以让我的扩展程序尝试获取尺寸,这样当帖子进入窗口的可见部分时,它就会被处理。但这没有我的偏好。这意味着每次用户滚动时都必须触发我的 JS 函数,这是不好的做法。我宁愿在加载 dom 时启动我的函数,所以如果添加新帖子,函数将被触发。


我的问题如下:当帖子未在屏幕上呈现时,是否有一种解决方法可以确保 GBCR 功能正常工作。或者有没有一种方法可以让我获得一个元素的坐标getComputedStyle(无需遍历所有元素)?

4

0 回答 0