LLWiki正在建设中,欢迎加入我们

MediaWiki:Gadget-MobileDiff.js

来自LLWiki
跳转到导航 跳转到搜索

注意:在保存之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5Ctrl-R(Mac为⌘-R
  • Google Chrome:Ctrl-Shift-R(Mac为⌘-Shift-R
  • Internet Explorer:按住Ctrl的同时单击刷新,或按Ctrl-F5
  • Opera:前往菜单 → 设置(Mac为Opera → Preferences),然后隐私和安全 → 清除浏览数据 → 缓存的图片和文件
// 由ResourceLoader直接调用,不可使用ES6语法
"use strict";
/*global mw, $*/
if (mw.config.get( 'wgCanonicalSpecialPageName' ) == "MobileDiff") {
    const title = mw.config.get('wgPageName'),
        torev = parseInt( title.match( /\d+$/ ) ),
        fromrev = parseInt( title.match( /\d+(?=\.{3})/ ) ),
        param = fromrev ? {fromrev:fromrev, torev:torev} : {fromrev:torev, torelative:'prev'},
        timerStart = mw.now();
    console.log( 'API request: 比较版本差异' );
    new mw.Api().get( $.extend(param, {action:'compare', prop:'diff', formatversion:2}) )
        .then(function(data) {
        console.log('End API request: 已获得版本差异,用时 ' + (mw.now() - timerStart) + ' ms');
        mw.hook( 'wikipage.content' ).add(function() {
            console.log('Hook: wikipage.content,替换为桌面版格式的差异');
            $( '#mw-mf-minidiff' ).html( '<table class="diff"><tbody>' + data.compare.body + '</tbody></table>' );
        });
    }, function(reason) { console.error('Failed API request: 无法获得版本差异。错误原因:' + reason); });
}
// [[category:作为模块的小工具]] [[category:阅读工具]] [[category:手机版小工具]]
// {{DEFAULTSORT:MobileDiff.js}}