User:SaoMikoto/common.js: Difference between revisions

From Test Wiki
Content deleted Content added
No edit summary
// Edit via InPageEdit
Tag: Reverted
Line 22: Line 22:
importScript('User:SaoMikoto/js/Usergroup.js'); // Backlink: [[User:SaoMikoto/js/Usergroup.js]]
importScript('User:SaoMikoto/js/Usergroup.js'); // Backlink: [[User:SaoMikoto/js/Usergroup.js]]
importScript('User:SaoMikoto/js/CleanDeleteReasons.js'); // Backlink: [[User:SaoMikoto/js/CleanDeleteReasons.js]]
importScript('User:SaoMikoto/js/CleanDeleteReasons.js'); // Backlink: [[User:SaoMikoto/js/CleanDeleteReasons.js]]
\

(function() {
// 创建飘落元素
function createFallingElement() {
var symbols = ['🍀', '☘️', '🌸', '🌿'];
var element = document.createElement('div');
element.className = 'falling-elements';
element.textContent = symbols[Math.floor(Math.random() * symbols.length)];
element.style.left = Math.random() * 100 + 'vw';
element.style.animationDuration = (3 + Math.random() * 3) + 's';
element.style.animationDelay = Math.random() * 2 + 's';
element.style.position = 'fixed';
element.style.top = '-50px';
element.style.pointerEvents = 'none';
element.style.zIndex = '9999';
element.style.fontSize = '20px';
element.style.animation = 'fall linear infinite';
document.body.appendChild(element);
// 动画结束后移除元素
setTimeout(function() {
if (element.parentNode) {
element.parentNode.removeChild(element);
}
}, 8000);
}

// 添加CSS动画
function addFallingCSS() {
if (document.getElementById('falling-style')) return;
var style = document.createElement('style');
style.id = 'falling-style';
style.textContent =
'@keyframes fall {' +
'0% { transform: translateY(-50px) rotate(0deg); opacity: 1; }' +
'100% { transform: translateY(100vh) rotate(360deg); opacity: 0; }' +
'}';
document.head.appendChild(style);
}

// 初始化函数
function initFallingElements() {
addFallingCSS();
// 每隔800ms创建新元素
setInterval(createFallingElement, 800);
}

// 页面加载完成后启动
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', initFallingElements);
} else {
initFallingElements();
}
})();