Skip to content
This repository was archived by the owner on Jan 19, 2025. It is now read-only.

Commit 49ba4be

Browse files
committed
Trying to stop chrome pull to refresh with stop propagation and some additional top offset checks 🚀
1 parent 7e4f094 commit 49ba4be

File tree

6 files changed

+14
-6
lines changed

6 files changed

+14
-6
lines changed

_includes/critical.css

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

_includes/dependencies-js-blog.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@
1616
</script>
1717
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS_SVG"></script>
1818
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script>
19-
<script type="text/javascript" src="/assets/js/index.blog.min.js?rev=a155500f2a958119ba19c2b4b967fb7f"></script>
19+
<script type="text/javascript" src="/assets/js/index.blog.min.js?rev=7b4115386954f6607bbeaca108e560d7"></script>
2020
{%include service-worker.html %}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
"/assets/js/index.blog.min.js?rev=a155500f2a958119ba19c2b4b967fb7f",
1+
"/assets/js/index.blog.min.js?rev=7b4115386954f6607bbeaca108e560d7",

_js/blog/pull-to-refresh.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,10 @@ const pullToRefresh = (): void => {
2828
pullToRefreshLoaderElement.style.opacity = `${pullToRefreshLoaderOpacity}`
2929
}
3030

31-
const isDraggingForPullToRefresh = (yMovement: number): boolean => window.scrollY <= 0 && yMovement <= 0
31+
const isDraggingForPullToRefresh = (yMovement: number): boolean => {
32+
const scrollY = window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop
33+
return scrollY === 0 && yMovement <= 0
34+
}
3235

3336
const closePullToRefresh = (): void => {
3437
addCssClass(pullToRefreshElement, 'end-pull')
@@ -80,6 +83,7 @@ const pullToRefresh = (): void => {
8083

8184
if (isDraggingForPullToRefresh(yMovement) && !pullToRefreshStatusRepository.refreshStarted) {
8285
event.preventDefault()
86+
event.stopPropagation()
8387
showPullToRefresh()
8488

8589
if (isPullToRefreshDragCompleted(yAbsoluteMovement)) {

_jsbuild/blog/pull-to-refresh.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,10 @@ const pullToRefresh = () => {
2828
pullToRefreshLoaderElement.style.opacity = `${pullToRefreshLoaderOpacity}`
2929
}
3030

31-
const isDraggingForPullToRefresh = (yMovement) => window.scrollY <= 0 && yMovement <= 0
31+
const isDraggingForPullToRefresh = (yMovement) => {
32+
const scrollY = window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop
33+
return scrollY === 0 && yMovement <= 0
34+
}
3235

3336
const closePullToRefresh = () => {
3437
addCssClass(pullToRefreshElement, 'end-pull')
@@ -80,6 +83,7 @@ const pullToRefresh = () => {
8083

8184
if (isDraggingForPullToRefresh(yMovement) && !pullToRefreshStatusRepository.refreshStarted) {
8285
event.preventDefault()
86+
event.stopPropagation()
8387
showPullToRefresh()
8488

8589
if (isPullToRefreshDragCompleted(yAbsoluteMovement)) {

assets/js/index.blog.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)