LLWiki正在建设中,欢迎
加入我们
!
查看“MediaWiki:Gadget-HotCat-zh-core.js”的源代码
←
MediaWiki:Gadget-HotCat-zh-core.js
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
该页提供此wiki软件的界面文字,它已被保护以防止恶意修改。您可以点击右侧按钮在讨论页提出编辑请求,让管理人员代为编辑:
提出编辑请求
您无权编辑此JavaScript页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
//<nowiki> /** * @Function: 修改HotCat以识别繁简分类 * @Contributors: [[User:Bhsd]]; [[User:葫芦又]] */ $(function() { const ns = mw.config.get('wgNamespaceNumber'), mobileMode = mw.loader.getState( 'ext.gadget.MobileCategories' ) !== null; if ( mw.config.get('wgCanonicalSpecialPageName') !== 'Upload' && (ns < 0 || // Special pages ns === 10 || // Templates ns === 274 || // Widget ns === 828 || // Module (Lua) ns === 8 || // MediaWiki ns === 2 || // User ns % 2 === 1 || // Talk page !mw.config.get('wgArticleId') || // Non-existing file pages mw.config.get("wgPageContentModel") !== "wikitext" || mw.config.get('wgAction') != 'view' || mw.config.get( 'wgIsRedirect' )) ) { return; } if ( mobileMode ) { mw.hook( 'wikipage.categories' ).add( main ); } else { main(); } function main() { const api = new mw.Api(), categories = mw.config.get('wgCategories'), noVariants = categories.length === 0 || mobileMode, canonicalCats = categories.map(ele => 'Category:' + ele).join('|'); var request1 = api.get({ action: 'query', titles: mw.config.get('wgPageName'), prop: 'revisions|pageprops', rvprop: 'content', rvslots: 'main', ppprop: 'defaultsort', formatversion: 2, }), request2 = noVariants && $.Deferred().resolve() || api.get({ action:'query', prop: 'info', inprop: 'varianttitles', formatversion: 2, titles: canonicalCats, converttitles: 1 }); $.when(request1, request2).then(function(data1, data2) { const pageInfo = data1[0].query.pages[0], obj1 = pageInfo.revisions[0].slots.main.content; window.hotcat_preload = obj1; mw.config.set( 'wgDefaultSortKey', (pageInfo.pageprops || {}).defaultsort || '' ); mw.hook( 'gadget.hotcat.preloaded' ).fire(); if ( noVariants ) { mw.loader.load('/zh?title=mediawiki:gadget-HotCat.js&action=raw&ctype=text/javascript'); return; } const obj2 = data2[0].query.pages, cats = [...obj1.matchAll(/\[\[\s*(?:category|分类|分類)\s*:\s*(.*?)(?:\|.*)?\s*]]/ig)] .map( ele => ele[1].charAt(0).toUpperCase() + ele[1].slice(1).replace(/_/g, ' ') ); obj2.forEach(function(ele) { const catVt = ele.varianttitles; if (!catVt) { return; } const catHans = catVt['zh-cn'].substring(3), catHant = catVt['zh-tw'].substring(3), catlink = $('#catlinks a[title="Category:' + catHans + '"], #catlinks a[title="Category:' + catHant + '"]'); if (catlink.length === 0) { return; } if (cats.includes( catHans )) { catlink.attr('title','Category:' + catHans); catlink.attr('href','/zh/Category:' + catHans); } else { catlink.attr('title','Category:' + catHant); catlink.attr('href','/zh/Category:' + catHant); } }); mw.loader.load('/zh?title=mediawiki:gadget-HotCat.js&action=raw&ctype=text/javascript'); }); } }); //</nowiki>
返回
MediaWiki:Gadget-HotCat-zh-core.js
。
导航菜单
个人工具
创建账号
登录
命名空间
系统消息
讨论
变体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
随机页面
最近更改
沙盒
互助客栈
方针与指引
帮助
工具
链入页面
相关更改
特殊页面
页面信息