MediaWiki:Common.js
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */
// Cloudflare Web Analytics
var script = document.createElement('script');
script.defer = true;
script.src = 'https://static.cloudflareinsights.com/beacon.min.js';
script.setAttribute('data-cf-beacon', '{"token": "6180aa28fe1943b48c4059a5056f4738"}');
document.head.appendChild(script);
// End Cloudflare Web Analytics
$(function () {
// 只在 Special:Search 页面运行
if (mw.config.get("wgCanonicalSpecialPageName") === "Search") {
const searchTerm = mw.util.getParamValue("search");
const googleUrl = "https://www.google.com/search?q=" + encodeURIComponent(searchTerm);
const $googleLink = $("<p>").html(
`你也可以到 <a href="${googleUrl}" target="_blank" rel="noopener">Google 中搜索“${searchTerm}”</a>。`
);
// 优先在有搜索结果时插入
if ($(".mw-search-results").length) {
$googleLink.insertAfter(".mw-search-results");
}
// 否则在没有结果提示后插入
else if ($(".mw-search-nonefound").length) {
$googleLink.insertAfter(".mw-search-nonefound");
}
}
});
// logo 切换逻辑
$(function () {
function updateCopyrightIcon() {
var $icon = $('#footer-copyrightico img');
if ($icon.length === 0) return;
if (document.documentElement.classList.contains('skin-theme-clientpref-night')) {
$icon.attr('src', '/resources/assets/cc-by-nc-sa-dark.svg');
} else {
$icon.attr('src', '/resources/assets/cc-by-nc-sa.svg');
}
}
// 页面加载时执行一次
updateCopyrightIcon();
// 监听深浅模式切换
var observer = new MutationObserver(updateCopyrightIcon);
observer.observe(document.documentElement, { attributes: true, attributeFilter: ['class'] });
});