File tree Expand file tree Collapse file tree 2 files changed +38
-0
lines changed Expand file tree Collapse file tree 2 files changed +38
-0
lines changed Original file line number Diff line number Diff line change @@ -135,6 +135,11 @@ var InfiniteScroll = (function(_Component) {
135135 scrollEl = this . scrollComponent . parentNode ;
136136 }
137137
138+ scrollEl . removeEventListener (
139+ 'mousewheel' ,
140+ this . mousewheelListener ,
141+ this . props . useCapture ,
142+ ) ;
138143 scrollEl . removeEventListener (
139144 'scroll' ,
140145 this . scrollListener ,
@@ -159,6 +164,11 @@ var InfiniteScroll = (function(_Component) {
159164 scrollEl = this . scrollComponent . parentNode ;
160165 }
161166
167+ scrollEl . addEventListener (
168+ 'mousewheel' ,
169+ this . mousewheelListener ,
170+ this . props . useCapture ,
171+ ) ;
162172 scrollEl . addEventListener (
163173 'scroll' ,
164174 this . scrollListener ,
@@ -175,6 +185,16 @@ var InfiniteScroll = (function(_Component) {
175185 }
176186 } ,
177187 } ,
188+ {
189+ key : 'mousewheelListener' ,
190+ value : function mousewheelListener ( e ) {
191+ // Prevents Chrome hangups
192+ // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257
193+ if ( e . deltaY === 1 ) {
194+ e . preventDefault ( ) ;
195+ }
196+ } ,
197+ } ,
178198 {
179199 key : 'scrollListener' ,
180200 value : function scrollListener ( ) {
Original file line number Diff line number Diff line change @@ -61,6 +61,11 @@ export default class InfiniteScroll extends Component {
6161 scrollEl = this . scrollComponent . parentNode ;
6262 }
6363
64+ scrollEl . removeEventListener (
65+ 'mousewheel' ,
66+ this . mousewheelListener ,
67+ this . props . useCapture ,
68+ ) ;
6469 scrollEl . removeEventListener (
6570 'scroll' ,
6671 this . scrollListener ,
@@ -83,6 +88,11 @@ export default class InfiniteScroll extends Component {
8388 scrollEl = this . scrollComponent . parentNode ;
8489 }
8590
91+ scrollEl . addEventListener (
92+ 'mousewheel' ,
93+ this . mousewheelListener ,
94+ this . props . useCapture ,
95+ ) ;
8696 scrollEl . addEventListener (
8797 'scroll' ,
8898 this . scrollListener ,
@@ -99,6 +109,14 @@ export default class InfiniteScroll extends Component {
99109 }
100110 }
101111
112+ mousewheelListener ( e ) {
113+ // Prevents Chrome hangups
114+ // See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257
115+ if ( e . deltaY === 1 ) {
116+ e . preventDefault ( ) ;
117+ }
118+ }
119+
102120 scrollListener ( ) {
103121 const el = this . scrollComponent ;
104122 const scrollEl = window ;
You can’t perform that action at this time.
0 commit comments