미디어위키:Common.js: 두 판 사이의 차이

편집 요약 없음
편집 요약 없음
46번째 줄: 46번째 줄:




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


$(document).ready(function() {
     // 소제목 클릭 시
     // 소제목 클릭 시
     $('h2, h3, h4, h5, h6').click(function() {
     $('h2, h3, h4, h5, h6').click(function() {
55번째 줄: 60번째 줄:
         // 내용이 펼쳐져 있으면 접고, 접혀 있으면 펼침
         // 내용이 펼쳐져 있으면 접고, 접혀 있으면 펼침
         content.slideToggle();
         content.slideToggle();
       
        // 버튼 아이콘 변경 (열려 있으면 '-' 닫혀 있으면 '+')
        if (content.is(':visible')) {
            $(this).append(' -');
        } else {
            $(this).append(' +');
        }
     });
     });


     // 페이지 로딩 후 기본적으로 접어놓기
     // 클릭할 수 있도록 커서 스타일 변경
     $('h2, h3, h4, h5, h6').each(function() {
     $('h2, h3, h4, h5, h6').css('cursor', 'pointer');
        var content = $(this).nextUntil('h2, h3, h4, h5, h6');
        content.hide(); // 처음에는 다 접어둠
        $(this).append(' +'); // 각 소제목 옆에 + 표시
    });
});
});

2025년 4월 26일 (토) 22:07 판

$(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.slideToggle();
    });

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