v
by
noromanba
2018-02-16 [2018/02/16 14:53:52]
dumb jump to bottom of page; [Ctrl +] End alternatives
@@ -46,9 +46,11 @@
// perhaps Fx treated like a "non-finite values", `NaN` and +/-`Infinity` c.f.
// https://www.w3.org/TR/cssom-view/#dom-window-scroll
// https://www.w3.org/TR/cssom-view/#normalize-non-finite-values
+ // https://www.w3.org/TR/cssom-view/#webidl-values
//
// Firefox 58.0.2 mobile works well
// `Number.MAX_SAFE_INTEGER` and `Number.MAX_VALUE` methods
//*/
})();
+
/*
* @title ⤓
* @description dumb jump to bottom of page; [Ctrl +] End alternatives
* @include http://*
* @include https://*
* @license MIT License https://opensource.org/licenses/MIT
* @javascript_url
*/
// via
// https://hail2u.net/blog/coding/window-scrollto-infinity-infinity.html
// TBD simulate End key press
/* for mobile
javascript:window.scrollTo(0,Number.MAX_SAFE_INTEGER)
javascript:window.scrollTo(0,Number.MAX_VALUE)
javascript:window.scrollTo(0,Math.max.apply(null,[document.documentElement.scrollHeight,document.documentElement.clientHeight,document.body.scrollHeight,document.body.clientHeight]))
*/
// avoid Magic Number e.g.
// 99999..., 10000... and 1e100...
(() => {
'use strict';
//*/ boring...
window.scrollTo(0, Math.max(...[
document.documentElement.scrollHeight,
document.documentElement.clientHeight,
document.body.scrollHeight,
document.body.clientHeight,
]));
/*/
window.scrollTo(0, Number.MAX_SAFE_INTEGER || Infinity);
// XXX `Infinity` is fallback/workaround for IE (might be fixed) c.f.
// https://hail2u.net/blog/coding/window-scrollto-infinity-infinity.html
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER
//
// You can use `Number.MAX_VALUE` BUT exponential;
// so hard to try decimalization before truncate c.f.
// https://stackoverflow.com/questions/18719775/parsing-and-converting-exponential-values-to-decimal-in-javascript
//
// FIXME `Number.MAX_SAFE_INTEGER` methods do not working on Firefox 58.0.2 Desktop
// expected scroll to bottom, but actual scroll to top; like this
// window.scrollTo(0, 0)
// perhaps Fx treated like a "non-finite values", `NaN` and +/-`Infinity` c.f.
// https://www.w3.org/TR/cssom-view/#dom-window-scroll
// https://www.w3.org/TR/cssom-view/#normalize-non-finite-values
// https://www.w3.org/TR/cssom-view/#webidl-values
//
// Firefox 58.0.2 mobile works well
// `Number.MAX_SAFE_INTEGER` and `Number.MAX_VALUE` methods
//*/
})();
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。