メニューを切り替える
Toggle preferences menu
個人設定を切り替える
ログインしていません
編集を行うと、IPアドレスが公開されます。

MediaWiki:Common.js

MediaWikiインターフェイスページ
2025年3月28日 (金) 02:09時点におけるU-Stella (トーク | 投稿記録)による版

注意: 保存後、変更を確認するにはブラウザーのキャッシュを消去する必要がある場合があります。

  • Firefox / Safari: Shift を押しながら 再読み込み をクリックするか、Ctrl-F5 または Ctrl-R を押してください (Mac では ⌘-R)
  • Google Chrome: Ctrl-Shift-R を押してください (Mac では ⌘-Shift-R)
  • Internet Explorer / Microsoft Edge: Ctrl を押しながら 最新の情報に更新 をクリックするか、Ctrl-F5 を押してください
  • Opera: Ctrl-F5を押してください
mw.hook('wikipage.content').add(function ($content) {
  // すべての中身をここに入れて動かす
  
  
  
  
// ユーザー名歓迎表示
$(function(){
    if(mw.config.get('wgUserName')){
        $('#mw-head').prepend(
            '<div style="padding:5px;background:#1a73e8;color:#fff;text-align:center;">ようこそ、' +
            mw.config.get('wgUserName') + 'さん!</div>'
        );
    }
});


  // 折りたたみ可能セクション
$(function() {
  $('.mw-headline').click(function() {
    $(this).parent().nextUntil('h2, h3, h4, h5, h6').slideToggle();
  }).css('cursor', 'pointer');
});

  
// 目次トグル機能追加
$(function(){
  var toc = $('#toc');
  if(toc.length){
    toc.before('<button id="toggle-toc">目次を開閉</button>');
    $('#toggle-toc').css({
      margin: '5px', padding: '3px 6px', cursor: 'pointer'
    }).click(function(){
      toc.slideToggle();
    });
  }
});


// 外部リンクを新規タブで開く
$(function() {
  $('a.external').attr('target', '_blank');
});


// ユーステラ風✨星キラキラカーソル(頻度調整+水色強化版)
var lastStarTime = 0;
$(document).mousemove(function(e) {
    var now = Date.now();
    if (now - lastStarTime < 100) return; // 出現頻度を調整(100を大きくすればさらに少なくなる)
    lastStarTime = now;

    var colors = ['#6ff', '#9cf', '#cff', '#8df', '#7af']; // より水色っぽく調整
    var star = $('<div>').text('✦').css({
        position: 'absolute',
        top: e.pageY - 10,
        left: e.pageX - 10,
        color: colors[Math.floor(Math.random() * colors.length)],
        fontSize: '14px',
        pointerEvents: 'none',
        opacity: 1,
        zIndex: 9999,
        userSelect: 'none',
        textShadow: '0 0 6px #8df, 0 0 12px #6ff'
    }).appendTo('body');

    star.animate({
        top: e.pageY - (Math.random() * 40 - 20),
        left: e.pageX - (Math.random() * 40 - 20),
        opacity: 0,
        fontSize: '4px'
    }, 1000, function() {
        $(this).remove();
    });
});
});