Estoy tratando de implementar una función de extracción para actualizar en mi PWA móvil.
Como quiero evitar el uso touchStart y touchEnd para determinar si el usuario bajó la página, pensé en usar una intersectionObserver .
Mi enfoque es "si el envoltorio de la página está a la vista en un 50%, active la función de actualización" .
( pullToRefresh = () => { const wrapper = document.querySelector('.wrapper'); const options = { root: null, rootMargin: "0px 0px 0px 0px", threshold: 0, }; wrapperObserver = new IntersectionObserver (function (entries, observer) { entries.forEach(function(entry) { if (entry.intersectionRatio > 0.5) { console.log('wrapper in view') } else if (entry.intersectionRatio <= 0.5) { console.log("wrapper out of view") location.reload(true) } }); }, options); wrapperObserver(wrapper); })(); El const wrapper está a la vista desde el principio y siempre tiene una altura de solo 100vh .
Sin embargo, no puedo hacer que se dispare. (Estoy usando el simulador de iOS para probarlo). ¡Gracias por los consejos!