歧路旅人:大陆的霸者WIKI
wiki.17173.com/octopathsp
首页
旅人图鉴
图鉴资料
地图资料
武器图鉴
首饰图鉴
支援者图鉴
支炎兽图鉴
试炼之塔
秘技的试炼
职业的试炼
历战的试炼
攻略聚合
斗技大赛
历战NPC攻略
主线BOSS
追忆之塔
讨伐委托
新手攻略
支炎兽
管理
刷新本页缓存
页面操作
短链
移动
删除
保护
取消监视
链入页面
常用功能
沙盒
所有页面
特殊页面
Cargo表
Cargo查询
创建模板
文件列表
更改审核
最近更改
用户权限
用户组权限
评论管理
更改审核
全站配置
配置导航栏
配置整站通告
配置小组件
配置全局CSS
配置全局JS
全局测试CSS
全局测试js
JS/CSS版本
全站设置
组件使用帮助
新建页面提示
修改页面提示
删除页面原因
编辑版权警示
修改页面摘要
上传文件提示
上传文件协议
上传文件说明
编辑器上传文件说明
删除文件原因
其他
创建
攻略审核
WIKI贡献榜
WIKI反馈区
WIKI运维
首页
旅人图鉴
图鉴资料
地图资料
武器图鉴
首饰图鉴
支援者图鉴
支炎兽图鉴
试炼之塔
秘技的试炼
职业的试炼
历战的试炼
攻略聚合
斗技大赛
历战NPC攻略
主线BOSS
追忆之塔
讨伐委托
新手攻略
支炎兽
管理
刷新本页缓存
页面操作
短链
移动
删除
保护
取消监视
链入页面
常用功能
沙盒
所有页面
特殊页面
Cargo表
Cargo查询
创建模板
文件列表
更改审核
最近更改
用户权限
用户组权限
评论管理
更改审核
全站配置
配置导航栏
配置整站通告
配置小组件
配置全局CSS
配置全局JS
全局测试CSS
全局测试js
JS/CSS版本
全站设置
组件使用帮助
新建页面提示
修改页面提示
删除页面原因
编辑版权警示
修改页面摘要
上传文件提示
上传文件协议
上传文件说明
编辑器上传文件说明
删除文件原因
其他
创建
攻略审核
WIKI贡献榜
WIKI反馈区
WIKI运维
查看“MediaWiki:Common.js”的源代码
WIKI功能
阅读
查看源代码
查看历史
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
此页面为本wiki上的软件提供界面文本,并受到保护以防止滥用。 如欲修改所有wiki的翻译,请访问
translatewiki.net
上的MediaWiki本地化项目。
您无权编辑此JavaScript页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */ function templateResourceLoader() { $('.resourceLoader').each(function() { var $x = $(this); var text = $.trim($x.text()); if (!text) return; //加载模块 if ($x.data('isModule') == true) return mw.loader.load(text); //自动补充MediaWiki命名空间 var ns = text.match('^.*?:'); if (!ns) text = 'MediaWiki:' + text; //加载CSS样式表 var mime = ($x.data('mime') || "text/javascript").toLowerCase(); if (mime == "text/css") { if (text.slice(-4).toLowerCase() !== '.css') text = text + '.css'; //if ($x.data('debug') !== true) text = text + '&debug=false'; return mw.loader.load("//wiki.17173.com/octopathsp/index.php?title="+text+"&action=raw&ctype=text/css", "text/css"); } //加载JS脚本 if (ns && ns[0].toLowerCase() !== 'mediawiki:') { return console.log('ResourceLoader: 不允许加载MediaWiki以外的js脚本'); } if (text.slice(-3).toLowerCase() !== '.js') text = text + '.js'; //加载ES6模块 if ($x.data('isModuleEs6') == true) return loadModuleES6("//wiki.17173.com/octopathsp/index.php?title="+text+"&action=raw&ctype=text/javascript", function() { console.log("ResourceLoader: 加载ES6模块 => " + text); }); //加载React模块 if ($x.data('isModuleReact')) { if ($x.data('isModuleReact')[0]) { $.getScript("//wiki.17173.com/octopathsp/index.php?title=MediaWiki:React.development.min.js&action=raw&ctype=text/javascript", function() { $.getScript("//wiki.17173.com/octopathsp/index.php?title=MediaWiki:React-dom.development.min.js&action=raw&ctype=text/javascript", function() { console.log("ReactENV => React/ReactDOM Loaded! React is Available For This Page!"); console.log("%c React开发提示 %c 请务必在JS编辑界面右下角使用React同步器同步编译你的JSX代码,否则它将不起任何作用", "color: #fff; padding: 5px 0; background: blue;", "padding: 5px 5px 5px 0; background: #e5e5ff; color:blue"); $('.resourceLoader').each(function() { var $xr = $(this); var textr = $.trim($xr.text()); if (!textr) return; //自动为React模块补充MediaWiki命名空间与-babel后缀 var nsr = textr.match('^.*?:'); if (!nsr) textr = 'MediaWiki:' + textr.slice(0, -3); textr += '-babel.js'; if ($xr.data('isModuleReact') && $xr.data('isModuleReact')[1]) { loadModuleES6("//wiki.17173.com/octopathsp/index.php?title="+textr+"&action=raw&ctype=text/javascript", function() { console.log("ResourceLoader: 加载React模块 => " + textr); }); } }); }); }); return; } } //加载普通脚本 console.log('ResourceLoader: 加载JS => ' + text); //if ($x.data('debug') !== true) text = text + '&debug=false'; return mw.loader.load("//wiki.17173.com/octopathsp/index.php?title="+text+"&action=raw&ctype=text/javascript", "text/javascript"); }); } if (document.readyState == 'loading') { document.addEventListener('DOMContentLoaded', templateResourceLoader); } else { templateResourceLoader(); } //加载ES6模块 function loadModuleES6(src, callback) { var script = document.createElement('script'), head = document.getElementsByTagName('head')[0]; script.type = 'module'; script.charset = 'UTF-8'; script.src = src; if (script.addEventListener) { script.addEventListener('load', function () { callback(); }, false); } else if (script.attachEvent) { script.attachEvent('onreadystatechange', function () { var target = window.event.srcElement; if (target.readyState == 'loaded') { callback(); } }); } head.appendChild(script); } $(function InitCardSelect() { var self = {}; var selectOptions; //所有筛选按钮 var filters = {}; //当前筛选规则 var filterKeys = []; //所有筛选Key var showAll = true; //不筛选,显示全部 var tableRows; //所有要被筛选的行 var computedRows; //筛选后的行 var $sorter; //当前进行排序的表头 var sortDesent = false; //反向排序 function isNil(s) { return s === "" || s === undefined || s === null || s === false; } //点击筛选按钮时 function OnSelectOptionClick(e) { var $x = e.data; e.preventDefault(); var label = "[" + $.trim($x.text()) + "] 筛选"; console.time(label); //显示全部 if ($x.FilterKey == 0) { for (var i in selectOptions) { selectOptions[i].Select = false; selectOptions[i].removeClass("selected"); } filters = {}; showAll = true; //更新表格 self.FilterRows(); console.timeEnd(label); return; } showAll = false; var select = !$x.Select; $x.Select = select; //变更筛选状态 var key = $x.FilterKey; filters[key] = filters[key] || {}; var opt = $x.FilterOpt == "AND" ? "AND" : "OR"; filters[key][opt] = filters[key][opt] || []; if (select) { filters[key][opt].push($x.FilterValue); } else { filters[key][opt] = filters[key][opt].filter(function (x) { return x !== $x.FilterValue; }); if (filters[key][opt].length < 1) delete filters[key][opt]; } select ? $x.addClass("selected") : $x.removeClass("selected"); self.FilterRows(); console.timeEnd(label); } function OnHeaderSortClick(e) { var $x = e.data; e.preventDefault(); var label = "[" + $.trim($x.text()) + "] 排序"; console.time(label); if ($sorter !== $x) { //第一次:新的排序 $sorter = $x; sortDesent = false; } else if (!sortDesent) { //第二次:切换排序 sortDesent = true; } else { //第三次:不进行排序 $sorter = null; } self.SortRows(); console.timeEnd(label); } //初始化 self.Init = function () { selectOptions = $(".cardSelectOption") .toArray() .map(function (x) { var $x = $(x); var dataOption = $.trim($x.data("option")); var dataGroup = $.trim($x.data("group")); if (isNil(dataOption) || isNil(dataGroup)) return $x; var splt = dataOption.split("|"); $x.FilterKey = dataGroup; $x.FilterValue = $.trim(splt[1]); $x.FilterOpt = $.trim($x.data("opt") || "OR").toUpperCase(); if (filterKeys.indexOf(dataGroup) < 0) filterKeys.push(dataGroup); $x.click($x, OnSelectOptionClick); return $x; }); //$head = $('#CardSelectTabHeader'); tableRows = $("#CardSelectTr>tbody>tr,#CardSelectCard .trcard") .toArray() .map(function (x) { var $x = $(x); //if (x == $head[0]) continue; for (var i in filterKeys) { var key = filterKeys[i]; var val = $x.data("param" + key); if (val === undefined) continue; if (typeof val == "number") { val = val.toString(10); } var splt = val.split(","); for (var j in splt) { var s = $.trim(splt[j]); if (!isNil(s)) { $x.FilterData = $x.FilterData || {}; $x.FilterData[key] = $x.FilterData[key] || []; $x.FilterData[key].push(s); } } } return $x; }); //computedRows = tableRows.concat([]); $("#CardSelectTr>thead>tr>th").each(function (index, x) { var $x = $(x); $x.off("click").off("mousedown"); if ($x.hasClass("headerSort")) { $x.Index = index; //$x.SortKey = $x.data('group'); $x.click($x, OnHeaderSortClick); } }); }; //t1中包含t2中所有项 function includeAll(t1, t2) { for (var i in t2) { if (t1.indexOf(t2[i]) < 0) return false; } return true; } //t1中包含t2中的任一项 function includeAny(t1, t2) { if (t2.length == 0) return true; for (var i in t2) { if (t1.indexOf(t2[i]) > -1) return true; } return false; } //使用show/hide来显示表格行 self.FilterRows = function () { if (showAll) { filters = {}; } $("#CardSelectTr>tbody,#CardSelectCard").hide(); for (var idx in tableRows) { var $x = tableRows[idx]; var data = $x.FilterData; var hide = false; for (var key in filters) { hide = !data || !data[key]; if (!hide && filters[key]["AND"]) { hide = !includeAll(data[key], filters[key]["AND"]); } if (!hide && filters[key]["OR"]) { hide = !includeAny(data[key], filters[key]["OR"]); } if (hide) break; } if (!hide != !$x.Hide) { $x.Hide = hide; hide ? $x.hide() : $x.show(); } } $("#CardSelectTr .headerSort").removeClass("headerSortDown headerSortUp"); $("#CardSelectTr>tbody,#CardSelectCard").show(); $sorter = null; }; function grabSortData($tr, index) { $tr.SortData = $tr.SortData || []; if ($tr.SortData[index] !== undefined) return $tr.SortData[index]; var td = $tr.children("td")[index]; if (!td) { $tr.SortData[index] = -1; return -1; } var text = $.trim(td.textContent); $tr.SortData[index] = text; return text; } //对行排序,不显示的行会被移除 self.SortRows = function () { //var residues = []; if (!$sorter) { computedRows = tableRows.filter(function ($x) { return !$x.Hide; }); $("#CardSelectTr .headerSort").removeClass("headerSortDown headerSortUp"); } else if (!sortDesent) { var index = $sorter.Index; computedRows = tableRows.filter(function ($x) { return !$x.Hide; }); computedRows.sort(function compareFunction($x, $y) { var x = grabSortData($x, index); var y = grabSortData($y, index); var nx = +x; var ny = +y; return isNaN(nx) || isNaN(ny) ? isNaN(nx) && isNaN(ny) ? x < y ? -1 : 1 : isNaN(nx) ? 1 : -1 //字符串排后 : nx === ny ? 0 : nx < ny ? -1 : 1; //数值小的排前 //console.log (`${x} ~ ${y} => ${ret}`); //return ret; }); $("#CardSelectTr .headerSort").removeClass("headerSortDown headerSortUp"); $sorter.addClass("headerSortDown"); } else { computedRows.reverse(); $("#CardSelectTr .headerSort").removeClass("headerSortDown headerSortUp"); $sorter.addClass("headerSortUp"); } $("#CardSelectTr>tbody").hide().prepend(computedRows).show(); }; $(".cardSelectOption").off("click").off("mousedown"); if ($("#CardSelectTabHeader").parent().is("tbody")) { $("#CardSelectTr").prepend($("<thead/>").append($("#CardSelectTabHeader"))); } self.Init(); console.log("Common.js CardSelectTr Initialized."); return self; }); function fIsMobile() { return /Android|iPhone|iPad|iPod|BlackBerry|webOS|Windows Phone|SymbianOS|IEMobile|Opera Mini/i.test(navigator.userAgent); } $(".show-more").click(function () { var $description = $(this).find(".more-description"); if ($description.css("display") === "block") { $description.css("display", "none"); } else { $description.css("display", "block"); } }); function isMiniProgram() { return /miniProgram/i.test(navigator.userAgent); } function is173App() { return /RS/i.test(navigator.userAgent); } // 导航定位到指定位置 $(function(){ location.hash && $('#toc').find('a:contains('+decodeURIComponent(location.hash).replace(/[<>&'"#]/g,'')+')').click() //173apptopbar不显示 if(is173App()) { $('body').css({'padding-top': '0px'}) $('.g-topbar').css({ 'display': 'none', }) } // 小程序webview if (isMiniProgram()) { $('.bvideo').hide() $('body').addClass('miniapp') $('body').append('<div class="modal fade show" id="modal" tabindex="-1" aria-labelledby="modal" aria-modal="true" role="dialog"><div class="modal-dialog modal-dialog-centered"><div class="modal-content"><div class="modal-header"><h1 class="modal-title fs-5" id="exampleModalLiveLabel">复制链接到浏览器打开</h1><button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button></div><div class="modal-body"></div></div></div></div>') $('a').on('click', function (event) { if (!this.href.includes('wiki.17173.com')) { event.preventDefault() $('.modal-body').html('<p class="text-break">' + this.href + '</p>') $('#modal').show() } }) $('#modal .btn-close').on('click', function (params) { $('#modal').hide() }) } }); $('.boxClick44').click(function() { var box_id = $(this).data('id'); var divs = document.querySelectorAll('.detail_area'); // 获取所有div元素 for (var i = 0; i < divs.length; i++) { divs[i].style.display = 'none' } var divThis = document.getElementById(box_id); divThis.style.display = 'flex'; }) $(window).on('load', function () { var tabLinks = document.querySelectorAll('.tabber__tab'); tabLinks.forEach(function (link) { link.addEventListener('mouseover', function (event) { event.stopImmediatePropagation(); event.preventDefault(); }, true); }); }) mw.loader.using( [ 'oojs-ui', 'oojs-ui-windows' ], function () { // 固定 key,不每天生成新 key var LS_KEY = 'octo_wiki_migration_notice_last_shown_date'; // 今天日期:YYYY-MM-DD var d = new Date(); var today = d.getFullYear() + '-' + String( d.getMonth() + 1 ).padStart( 2, '0' ) + '-' + String( d.getDate() ).padStart( 2, '0' ); // 如果本地已记录“今天弹过”,则不再弹 if ( window.localStorage && localStorage.getItem( LS_KEY ) === today ) { return; } var noticeHtml = ` <p>各位热爱《歧路旅人:大陆的霸者》的玩家朋友们:</p> <p> 大家好!为汇聚同好共建优质 WIKI、优化查阅体验,经与 17173WIKI 工作人员及攻略组商议, 现正式将游戏中文 WIKI 从 17173Wiki 农场迁移至 <strong>Bilibili Wiki</strong>! </p> <p> 在此,特别感谢 17173 团队的支持!WIKI 搭建初期,核心框架在技术同学的专业协助下顺利落地; 一路走来,平台为站点成长提供了重要土壤,也见证了攻略组与玩家们的相伴同行,这份支持与信任我们始终铭记于心。 </p> <p> 目前原 WIKI 核心内容(角色图鉴、主线攻略、试炼指南等)已完整同步至新站点, 后续更新维护将集中于 Bilibili Wiki。 </p> <p> 诚邀各位玩家参与建设:萌新可反馈体验,大佬可协助编辑,欢迎加入 WIKI 建设 Q 群(<strong>832515507</strong>)或游戏互动讨论群(1 群 <strong>200428274</strong>;2 群 <strong>976587872</strong>)。 </p> <p><strong>新站点地址:</strong><br> <a href="https://wiki.biligame.com/octopathsp/" target="_blank" rel="noopener"> https://wiki.biligame.com/octopathsp/ </a> (点击跳转) </p> <p style="color:#d33;"> 温馨提示:17173 原站点预计 3 月下线,请及时收藏新地址,避免影响攻略查阅! </p> <p> 感谢大家的支持与陪伴,我们在 Bilibili Wiki 等你相聚!<br> <span style="display:block; text-align:right;">—— 大陆的霸者 WIKI 攻略组</span> </p> `; OO.ui.alert( new OO.ui.HtmlSnippet( noticeHtml ), { title: '【重要公告】歧路旅人大陆的霸者 WIKI 迁移通知', size: 'larger' } ).then( function () { // 关闭后把“最后弹出日期”写进去:当天不再弹 try { if ( window.localStorage ) { localStorage.setItem( LS_KEY, today ); } } catch ( e ) {} } ); } );
返回
MediaWiki:Common.js
。