打开/关闭搜索
搜索
打开/关闭菜单
7
260
74
1380
失传媒体中文维基
导航
首页
最近更改
随机页面
特殊页面
上传文件
帮助
维基语法
编者入门
社区
最近评论
其他
最近更改
特殊页面
所有页面
管理
编辑侧栏
通用CSS
主题CSS
打开/关闭外观设置菜单
通知
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。
user-interface-preferences
个人工具
创建账号
登录
查看“︁MediaWiki:Common.js”︁的源代码
MediaWiki界面页面
更多操作
←
MediaWiki:Common.js
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
此页面为本wiki上的软件提供界面文本,并受到保护以防止滥用。 如欲修改所有wiki的翻译,请访问
translatewiki.net
上的MediaWiki本地化项目。
您无权编辑此JavaScript页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
// 修复编辑取消后的死循环问题 // 修复取消编辑后跳转到 index.php 的问题,自动转为 /wiki/ 短链接 (function() { // 仅在 Minerva 皮肤下生效 if (mw.config.get('skin') !== 'minerva') return; // 提取 URL 中的标题并转为短链接的核心函数 function fixEditCancelUrl() { const currentUrl = window.location.href; const titleRegex = /index\.php\?title=([^&]+)/; // 匹配 index.php?title=xxx 格式 const match = currentUrl.match(titleRegex); // 1. 如果匹配到 index.php?title=xxx 格式 if (match && match[1]) { const pageTitle = decodeURIComponent(match[1]); // 解码标题(比如 %E9%A6%96%E9%A1%B5 → 首页) const shortUrl = `/wiki/${encodeURIComponent(pageTitle)}`; // 构造 /wiki/标题 格式 // 2. 用 replaceState 重写 URL(无刷新跳转,避免编辑器死循环) window.history.replaceState(null, document.title, shortUrl); // 3. 强制刷新页面内容(确保是浏览模式,而非编辑模式) if (!document.querySelector('.ve-init-mw-desktopArticleTarget')) { mw.loader.using('mediawiki.api').then(() => { new mw.Api().get({ action: 'parse', page: pageTitle, prop: 'text', format: 'json' }).done((data) => { const content = document.querySelector('main#content, #content'); if (content && data.parse) { content.innerHTML = data.parse.text['*']; } }); }); } } } // 监听时机:页面加载完成 + URL 变化时都执行 // 1. 页面首次加载时检查 document.addEventListener('DOMContentLoaded', fixEditCancelUrl); // 2. 监听浏览器历史变化(取消编辑会触发 popstate) window.addEventListener('popstate', fixEditCancelUrl); // 3. 额外监听 1 秒(防止异步跳转漏检) setTimeout(fixEditCancelUrl, 1000); })();
返回
MediaWiki:Common.js
。
查看“︁MediaWiki:Common.js”︁的源代码
MediaWiki界面页面