I couldn't find a solution to your problem but mine got solved when I reduced the threshold from 1 to 0.9. When it was set to 1, intersection observer wasn't working in Safari. But it worked perfectly in Firefox and Chrome.
const options={
root:null,
rootMargin:'0px',
threshold:0.9
};
It works whether the root is set to null or to document.body. For some reason, Intersection Observer in Safari wasn't working when I request it to only trigger when the object is 100% fully visible,but it works for 90%. I hope this helps someone out there.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…