Key takeawayPull-to-refresh reloads the current page when the user drags down at the top of the screen — expected on feeds, news and order lists. It conflicts with elements that scroll internally (maps, carousels, chat windows, modals), because a downward drag inside them can trigger a reload. Enable it, then test those elements; if one conflicts, stop the gesture from reaching the app or disable refresh on that page.
- Great for
- Feeds, lists, news
- Conflicts
- Maps, carousels, modals
- Fix
- Scroll containers + test
- Reload
- Current URL
Where it shines
- News, blogs and magazines — fresh articles.
- Shops — updated stock and prices.
- Dashboards and order lists — current status.
- Forums — new replies.
Where it bites
The app sees a downward drag at the top of the WebView and reloads — even if the user meant to scroll a map or a chat window. Common victims:
| Element | Symptom |
|---|---|
| Embedded maps | Panning down reloads the page |
| Image carousels and sliders | Vertical swipe reloads |
| Chat widgets | Scrolling up through messages reloads |
| Full-screen modals | Closing gesture reloads underneath |
| Forms | Half-typed form lost on accidental reload |
Fixes
- Make internal scrollers real scroll containers (
overflow:auto) so the page itself isn't at the top when the user drags inside them. - Add
overscroll-behavior: containto modals and chat panes. - If a page is mostly map, turn refresh off for it (if your converter supports per-URL rules) or for the whole app.
- Warn before leaving forms with unsaved input (
beforeunload).
Frequently asked
Does pull-to-refresh clear the cache?
No, it reloads the page like a browser refresh. Cached files may still be used if your server allows it.