MediaWiki:Gadget-UserLinkAvatar.js
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Internet Explorer或Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
- Opera:按 Ctrl-F5。
/* <pre> */
"use strict";
(function () {
var magnifierOn = +mw.user.options.get("gadget-userLinkAvatarMagnifier", 0) === 1;
var $window = $(window);
var loadingImage = "https://img.moegirl.org.cn/common/d/d1/Windows_10_loading.gif";
$window.on("load.UserLinkAvatar", function () {
var images = [];
$(".mw-userlink:not(.user-avatar-added)").each(function (_, ele) {
var item = $(ele);
var src = "https://commons.moegirl.org.cn/extensions/Avatar/avatar.php?user=".concat(encodeURIComponent(item.text()));
var img = $("<img/>").on("error", function () {
window.setTimeout(function () {
img.closest(".userlink-avatar").remove();
}, 0);
}).addClass("userlink-avatar-small").attr({
"data-src": src,
src: loadingImage
});
images.push(img[0]);
var bigAvatar = $("<span/>").addClass("userlink-avatar");
item.prepend(bigAvatar.append(img));
item.addClass("user-avatar-added");
if (magnifierOn) {
var magnifierImg_1 = $("<img/>", {
attr: {
"data-src": src,
src: loadingImage
},
on: {
error: function () {
window.setTimeout(function () {
magnifierImg_1.closest(".userlink-avatar-large").remove();
}, 0);
}
}
});
images.push(magnifierImg_1[0]);
bigAvatar.on("click", function () {
window.open("https://commons.moegirl.org.cn/index.php?title=Special%3A\u67E5\u770B\u5934\u50CF&user=".concat(encodeURIComponent(item.text())), "_blank");
return false;
}).append($("<div/>", {
attr: {
"class": "userlink-avatar-large"
}
}).prepend(magnifierImg_1)).addClass("userlink-avatar-hover");
item.before(bigAvatar);
bigAvatar.add(bigAvatar.children()).attr("title", "\u67E5\u770B\u7528\u6237".concat(item.text(), "\u7684\u5934\u50CF"));
}
});
if (typeof window.lazyload === "function") {
window.lazyload(images);
}
else {
images.forEach(function (ele) {
ele.src = ele.dataset.src;
});
}
});
$(function () {
$window.trigger("load.UserLinkAvatar");
});
})();
/* </pre> */