跳转到内容

MediaWiki:Common.js

来自失传媒体中文维基
HW留言 | 贡献2026年2月19日 (四) 12:04的版本

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

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5Ctrl-R(Mac为⌘-R
  • Google Chrome:Ctrl-Shift-R(Mac为⌘-Shift-R
  • Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
// 修复编辑取消后的死循环问题
mw.hook('wikipage.content').add(function() {
    // 监听 URL 变化
    let lastUrl = location.href;
    
    const checkUrl = function() {
        const currentUrl = location.href;
        if (currentUrl !== lastUrl) {
            lastUrl = currentUrl;
            
            // 如果 URL 是 /edit 结尾,但页面上没有编辑器(即取消了编辑)
            if (currentUrl.match(/\/edit$/) && !document.querySelector('.ve-init-mw-desktopArticleTarget-originalContent')) {
                // 强制跳转到普通浏览页面
                const viewUrl = currentUrl.replace(/\/edit$/, '');
                if (viewUrl !== currentUrl) {
                    history.replaceState(null, '', viewUrl);
                }
            }
        }
    };
    
    // 每 500ms 检查一次 URL 状态
    setInterval(checkUrl, 500);
});