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

(내용을 "$(function () { $(document).on('click', '.smooth-toggle', function (e) { e.preventDefault(); var target = $(this).data('target'); var $content = $('#' + target); $content.toggleClass('is-collapsed'); if ($content.hasClass('is-collapsed')) { $(this).text('[펼치기]'); } else { $(this).text('[접기]'); } }); });"(으)로 바꿈)
태그: 대체됨
편집 요약 없음
1번째 줄: 1번째 줄:
$(function () {
/* MediaWiki:Common.js */
     $(document).on('click', '.smooth-toggle', function (e) {
mw.hook('wikipage.content').add(function ($content) {
         e.preventDefault();
    // mw-customtoggle로 시작하는 버튼 탐색
     $content.find('[class*="mw-customtoggle-"]').each(function () {
         var $toggle = $(this);
        var classList = ($toggle.attr('class') || '').split(/\s+/);


         var target = $(this).data('target');
         classList.forEach(function (cls) {
        var $content = $('#' + target);
            if (cls.indexOf('mw-customtoggle-') === 0) {
                var targetId = 'mw-customcollapsible-' + cls.replace('mw-customtoggle-', '');
                var $target = $('#' + targetId);


        $content.toggleClass('is-collapsed');
                if ($target.length) {
                    // 클릭 시 jQuery slideToggle을 이용한 부드러운 애니메이션
                    $toggle.off('click.smoothSlide').on('click.smoothSlide', function (e) {
                        var $collapsibleContent = $target.find('.mw-collapsible-content');
                        var $animTarget = $collapsibleContent.length ? $collapsibleContent : $target;


        if ($content.hasClass('is-collapsed')) {
                        $animTarget.stop(true, true).slideToggle(200);
            $(this).text('[펼치기]');
                    });
        } else {
                }
             $(this).text('[접기]');
             }
         }
         });
     });
     });
});
});

2026년 8월 20일 (목) 14:43 판

/* MediaWiki:Common.js */
mw.hook('wikipage.content').add(function ($content) {
    // mw-customtoggle로 시작하는 버튼 탐색
    $content.find('[class*="mw-customtoggle-"]').each(function () {
        var $toggle = $(this);
        var classList = ($toggle.attr('class') || '').split(/\s+/);

        classList.forEach(function (cls) {
            if (cls.indexOf('mw-customtoggle-') === 0) {
                var targetId = 'mw-customcollapsible-' + cls.replace('mw-customtoggle-', '');
                var $target = $('#' + targetId);

                if ($target.length) {
                    // 클릭 시 jQuery slideToggle을 이용한 부드러운 애니메이션
                    $toggle.off('click.smoothSlide').on('click.smoothSlide', function (e) {
                        var $collapsibleContent = $target.find('.mw-collapsible-content');
                        var $animTarget = $collapsibleContent.length ? $collapsibleContent : $target;

                        $animTarget.stop(true, true).slideToggle(200);
                    });
                }
            }
        });
    });
});