如何在帖子内容渲染后执行 JS?

我找到了 api.decorateCookedElement,也看到了关于 afterAdopt: true 的说明,但这并没有解决我的问题。

我试图用 getBoundingClientRect 测量主话题正文中内容的偏移量,但它总是返回零,因为元素实际上还没有渲染到页面上……

我的代码在稍后触发时(例如通过控制台手动触发,或通过 resize 等事件监听器)可以正常工作,所以问题仅在于时机。

可以通过获取主内容容器(#topic)的偏移量来绕过这个问题,但我需要在计算中手动减去头像的宽度,这感觉像是权宜之计,而且可能会遗漏某些装饰元素实际位置的边缘情况。

我还检查了 plugin-outlet,但没有发现任何有希望的选项;decorateWidget 曾让我抱有希望,但似乎也不适用于帖子及其内容。

这是否可行?是否有我可以监听的事件,或者我遗漏了某个选项或钩子?

2 个赞

你可以在下一个运行循环之后将其加入队列,就像这样。

3 个赞