全站通知:
Widget:ShowPlayerName
刷
历
编
跳到导航
跳到搜索
<script type="text/javascript">
window.addEventListener('load', function () {
try{
window.userName = UserStatus.userInfo.uname ? UserStatus.userInfo.uname : "玩家";
console.log(`window.userName获取成功:${window.userName}`);
}catch(error){
console.log("window.userName获取失败");
window.userName = "玩家";
}
// 找到所有的MomentContainer
document.querySelectorAll('.MomentContent').forEach(function (container) {
var showDiv = container.querySelector('.Show');
var replaceTextElements = container.querySelectorAll('.replaceText');
var addTextElements = container.querySelectorAll('.AddText');
var likeNumElement = container.querySelector('.LikeNumber');
if (showDiv) {
showDiv.addEventListener('click', function () {
//变成点赞
if (showDiv.getAttribute('data-state') === 'notlike') {
showDiv.setAttribute('data-state', 'like');
replaceTextElements.forEach(function (element) {
element.innerHTML = element.innerHTML.replace(/玩家/g, window.userName);
});
addTextElements.forEach(function (element) {
let textContent = element.textContent;
element.innerHTML = window.userName + (textContent.length > 0 ? "、" : "") + element.innerHTML;
});
if(likeNumElement){ // 点赞数+1
likeNumElement.innerHTML = Number(likeNumElement.innerHTML) + 1;
}
if(container.querySelector('.Like.commentName')){ // 显示昵称
container.querySelector('.Like.commentName').style.display = "block";
}
}
//变成非点赞
else if (showDiv.getAttribute('data-state') === 'like') {
showDiv.setAttribute('data-state', 'notlike');
replaceTextElements.forEach(function (element) {
let escapedUserName = window.userName.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
let regex = new RegExp(escapedUserName, 'g');
element.innerHTML = element.innerHTML.replace(regex, '玩家');
});
addTextElements.forEach(function (element) {
let subLength = window.userName.length;
if(element.innerHTML.startsWith(window.userName + "、")){
subLength = subLength+1;
}
else if (container.querySelector('.Like.commentName')){
container.querySelector('.Like.commentName').style.display = "none";
}
element.innerHTML = element.innerHTML.substring(subLength);
});
if(likeNumElement){ // 点赞数 - 1
likeNumElement.innerHTML = Number(likeNumElement.innerHTML) - 1;
}
}
});
}
});
});
</script>

沪公网安备 31011002002714 号