I’ve come up with a simple solution that involves using an IntersectionObserver: Lazyload dataview/dvjs codeblock
It’s not perfect as I know it might not trigger in certain context (when viewed inside an embed or in a popover I believe). You can try efrec’s implementation if it happens. I’ll try to edit mine to make sure it covers most edge cases, but for now it works for what you’ve asked