미디어위키:Common.js

Dhtjsdn6 (토론 | 기여)님의 2025년 4월 26일 (토) 22:14 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.

  • 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
  • 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
  • 인터넷 익스플로러 / 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
  • 오페라: Ctrl-F5를 입력.
$(document).ready(function() {
    var counters = [0, 0, 0, 0, 0]; // h2~h6 카운터

    var passedTOC = false;

    $('h2, h3, h4, h5, h6').each(function() {
        if (!passedTOC) {
            if ($(this).prevAll('#toc').length > 0) {
                passedTOC = true;
            } else {
                return;
            }
        }

        var tagName = this.tagName.toLowerCase();
        var level = parseInt(tagName.substring(1)) - 2; // h2 → 0, h3 → 1, etc.

        counters[level]++;
        for (var i = level + 1; i < counters.length; i++) {
            counters[i] = 0; // 하위 레벨 초기화
        }

        var numbering = [];
        for (var i = 0; i <= level; i++) {
            if (counters[i] !== 0) {
                numbering.push(counters[i]);
            }
        }

        var numberLink = $('<a>')
            .attr('href', '#toc')
            .text(numbering.join('.') + '. ')
            .addClass('mw-link') // 목차 파란색 링크
            .css({
                'text-decoration': 'none',
                'margin-right': '5px'
            });

        $(this).prepend(numberLink);
    });
});





$(document).ready(function() {
    // 처음부터 전부 펼쳐진 상태로 시작
    $('h2, h3, h4, h5, h6').each(function() {
        var content = $(this).nextUntil('h2, h3, h4, h5, h6');
        content.show(); // 처음에는 다 펼쳐져 있음
    });

    // 소제목 클릭 시
    $('h2, h3, h4, h5, h6').click(function() {
        // 클릭한 제목의 바로 아래 내용(주로 p, div 등)을 선택
        var content = $(this).nextUntil('h2, h3, h4, h5, h6');

        // 애니메이션 없이 즉시 펼쳐지거나 접힘
        content.toggle(); // 애니메이션 없이 바로 토글

        // 접힌 소제목의 투명도 낮추기
        if (content.is(':visible')) {
            $(this).css('opacity', '1'); // 펼쳐졌을 때 불투명하게
        } else {
            $(this).css('opacity', '0.6'); // 접혔을 때 투명하게
        }
    });

    // 클릭할 수 있도록 커서 스타일 변경
    $('h2, h3, h4, h5, h6').css('cursor', 'pointer');
});