MediaWiki:Common.js:修订间差异

来自赛尔号精灵图鉴
跳转到导航 跳转到搜索
无编辑摘要
标签手工回退
Len留言 | 贡献
无编辑摘要
第13行: 第13行:


   updateOnlineNumber();
   updateOnlineNumber();
   setInterval(updateOnlineNumber, 30000);
   setInterval(updateOnlineNumber, 30000); // 每30秒更新一次
});
});


mw.loader.using('mediawiki.util', function () {
mw.loader.using(['mediawiki.util'], function () {
   const audio = document.createElement('audio');
   const audio = document.createElement('audio');
   audio.src = 'https://d1rtq9slcl72gh.cloudfront.net/audio/home.mp3';
   audio.src = 'https://d1rtq9slcl72gh.cloudfront.net/audio/home.mp3';
   audio.loop = true;
   audio.loop = true;
   audio.id = 'bgm';
   audio.id = 'bgm';
  document.body.appendChild(audio);


   const player = document.createElement('div');
   const player = document.createElement('div');
第31行: 第32行:
   `;
   `;
   player.style.cssText = "position:fixed;bottom:10px;right:10px;z-index:9999;background:#111;color:white;padding:10px 15px;border-radius:10px;display:flex;gap:10px;align-items:center;box-shadow:0 0 10px #000;font-size:14px";
   player.style.cssText = "position:fixed;bottom:10px;right:10px;z-index:9999;background:#111;color:white;padding:10px 15px;border-radius:10px;display:flex;gap:10px;align-items:center;box-shadow:0 0 10px #000;font-size:14px";
  document.body.appendChild(audio);
   document.body.appendChild(player);
   document.body.appendChild(player);


   // 用户点击任意位置后触发播放(绕过浏览器限制)
   // 必须用户点击页面后才能播放(浏览器策略)
   document.body.addEventListener('click', function () {
   document.body.addEventListener('click', function () {
     audio.play().catch(() => {});
     audio.play().catch(() => {});
   }, { once: true });
   }, { once: true });


  // 播放进度条
   setInterval(function () {
   setInterval(function () {
     if (!audio.duration) return;
     if (!audio.duration) return;

2025年6月4日 (三) 23:10的版本

$(function () {
  // 在线人数显示
  var $counter = $('<div id="online-counter">当前在线 <span style="color:#a782ff;">👥</span>:<span id="online-number">加载中...</span></div>');
  $('body').append($counter);

  function updateOnlineNumber() {
    $.getJSON('/api/online.php', function (data) {
      $('#online-number').text(data.count || 0);
    }).fail(function () {
      $('#online-number').text('获取失败');
    });
  }

  updateOnlineNumber();
  setInterval(updateOnlineNumber, 30000); // 每30秒更新一次
});

mw.loader.using(['mediawiki.util'], function () {
  const audio = document.createElement('audio');
  audio.src = 'https://d1rtq9slcl72gh.cloudfront.net/audio/home.mp3';
  audio.loop = true;
  audio.id = 'bgm';
  document.body.appendChild(audio);

  const player = document.createElement('div');
  player.innerHTML = `
    <button onclick="document.getElementById('bgm').play()">▶ 播放</button>
    <button onclick="document.getElementById('bgm').pause()">⏸ 暂停</button>
    <div style="flex-grow:1; height:6px; background:#444; border-radius:3px; overflow:hidden;">
      <div id="bar" style="height:6px;width:0%;background:#66f;"></div>
    </div>
  `;
  player.style.cssText = "position:fixed;bottom:10px;right:10px;z-index:9999;background:#111;color:white;padding:10px 15px;border-radius:10px;display:flex;gap:10px;align-items:center;box-shadow:0 0 10px #000;font-size:14px";
  document.body.appendChild(player);

  // 必须用户点击页面后才能播放(浏览器策略)
  document.body.addEventListener('click', function () {
    audio.play().catch(() => {});
  }, { once: true });

  // 播放进度条
  setInterval(function () {
    if (!audio.duration) return;
    const percent = (audio.currentTime / audio.duration) * 100;
    document.getElementById('bar').style.width = percent + '%';
  }, 300);
});