打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Common.js:修订间差异

MediaWiki界面页面
Smalllqiang
Smalllqiang留言 | 贡献 (test)
 
Smalllqiang
Smalllqiang留言 | 贡献 (尝试解决日语字形问题)
 
(未显示同一用户的4个中间版本)
第1行: 第1行:
// 用于弹出欢迎/提示弹窗
$(function() {
$(function() {
    if (mw.config.get('wgUserName') !== null) return;
// 仅对匿名用户、首页、且未手动关闭过弹窗时生效
if (localStorage.getItem('welcomeModalClosed')) return;
if (mw.config.get('wgUserName') !== null) return;
if (localStorage.getItem('welcomeModalClosed')) return;
if (!mw.config.get('wgIsMainPage')) return;
mw.loader.using('oojs-ui').then(function() {
const dialog = new OO.ui.MessageDialog();
const windowManager = new OO.ui.WindowManager();
$('body').append(windowManager.$element);
windowManager.addWindows([dialog]);
// 拼装带链接的提示文本
const loginUrl = mw.util.getUrl('Special:UserLogin');
const createUrl = mw.util.getUrl('Special:CreateAccount');
const message = $('<div>')
.append('您当前未登录,如需编辑请')
.append($('<a>').attr('href', loginUrl).text('登录'))
.append('或')
.append($('<a>').attr('href', createUrl).text('注册'))
.append('。').append('<br />')
.append('即使不登录,您也可以查看页面、进行评论。');
windowManager.openWindow(dialog, {
title: '欢迎访问本站!',
message: message,
actions: [{
action: 'accept',
label: '不再提示',
flags: 'primary'
}]
}).closed.then(function(data) {
if (data && data.action === 'accept') {
localStorage.setItem('welcomeModalClosed', 'true');
}
});
});
});


    if (!mw.config.get('wgIsMainPage')) return;
// 尝试解决日语字形问题
    const modalHtml = `
// 仅当页面存在 lang="ja" 元素时才加载 Noto Sans JP
        <div id="welcome-modal" style="position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center;">
if (document.querySelector('[lang*="ja"]')) {
            <div style="background:white;padding:30px;border-radius:10px;max-width:500px;box-shadow:0 5px 20px rgba(0,0,0,0.3);">
mw.loader.load('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap', 'text/css');
                <h2 style="margin-top:0;">歡迎訪問本站!</h2>
}
                <p>您當前未登錄,部分功能可能受限。</p>
 
                <p>建議您 <a href="${mw.util.getUrl('Special:UserLogin')}">登錄賬號</a> 以獲得完整體驗。</p>
// 用于百度统计
                <button id="close-welcome-modal" style="margin-top:15px;padding:10px 20px;background:#007bff;color:white;border:none;border-radius:5px;cursor:pointer;">知道了,不再顯示</button>
var _hmt = _hmt || [];
            </div>
(function() {
        </div>
var hm = document.createElement("script");
    `;
hm.src = "https://hm.baidu.com/hm.js?6dc164cfa58495c076be58d74b6943bb";
   
var s = document.getElementsByTagName("script")[0];
    $('body').append(modalHtml);
s.parentNode.insertBefore(hm, s);
    $('#close-welcome-modal').on('click', function() {
})();
        $('#welcome-modal').remove();
        localStorage.setItem('welcomeModalClosed', 'true');
    });
});

2026年1月15日 (四) 18:30的最新版本

// 用于弹出欢迎/提示弹窗
$(function() {
	// 仅对匿名用户、首页、且未手动关闭过弹窗时生效
	if (mw.config.get('wgUserName') !== null) return;
	if (localStorage.getItem('welcomeModalClosed')) return;
	if (!mw.config.get('wgIsMainPage')) return;
	mw.loader.using('oojs-ui').then(function() {
		const dialog = new OO.ui.MessageDialog();
		const windowManager = new OO.ui.WindowManager();
		$('body').append(windowManager.$element);
		windowManager.addWindows([dialog]);
		// 拼装带链接的提示文本
		const loginUrl = mw.util.getUrl('Special:UserLogin');
		const createUrl = mw.util.getUrl('Special:CreateAccount');
		const message = $('<div>')
			.append('您当前未登录,如需编辑请')
			.append($('<a>').attr('href', loginUrl).text('登录'))
			.append('或')
			.append($('<a>').attr('href', createUrl).text('注册'))
			.append('。').append('<br />')
			.append('即使不登录,您也可以查看页面、进行评论。');
		windowManager.openWindow(dialog, {
			title: '欢迎访问本站!',
			message: message,
			actions: [{
				action: 'accept',
				label: '不再提示',
				flags: 'primary'
			}]
		}).closed.then(function(data) {
			if (data && data.action === 'accept') {
				localStorage.setItem('welcomeModalClosed', 'true');
			}
		});
	});
});

// 尝试解决日语字形问题
// 仅当页面存在 lang="ja" 元素时才加载 Noto Sans JP
if (document.querySelector('[lang*="ja"]')) {
	mw.loader.load('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap', 'text/css');
}

// 用于百度统计
var _hmt = _hmt || [];
(function() {
	var hm = document.createElement("script");
	hm.src = "https://hm.baidu.com/hm.js?6dc164cfa58495c076be58d74b6943bb";
	var s = document.getElementsByTagName("script")[0];
	s.parentNode.insertBefore(hm, s);
})();