v Fork

    @@ -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 です。