allow fractional values for scrollTop above and below expected value
parent
d92336fc16
commit
726e91101a
|
@ -222,10 +222,12 @@ module.exports = React.createClass({
|
||||||
// whether it will stay that way when the children update.
|
// whether it will stay that way when the children update.
|
||||||
isAtBottom: function() {
|
isAtBottom: function() {
|
||||||
const sn = this._getScrollNode();
|
const sn = this._getScrollNode();
|
||||||
// fractional values for scrollTop happen on certain browsers/platforms
|
// fractional values (both too big and too small)
|
||||||
|
// for scrollTop happen on certain browsers/platforms
|
||||||
// when scrolled all the way down. E.g. Chrome 72 on debian.
|
// when scrolled all the way down. E.g. Chrome 72 on debian.
|
||||||
// so ceil everything upwards to make sure it aligns.
|
// so check difference <= 1;
|
||||||
return Math.ceil(sn.scrollTop) === Math.ceil(sn.scrollHeight - sn.clientHeight);
|
return Math.abs(sn.scrollHeight - (sn.scrollTop + sn.clientHeight)) <= 1;
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// returns the vertical height in the given direction that can be removed from
|
// returns the vertical height in the given direction that can be removed from
|
||||||
|
|
Loading…
Reference in New Issue