「MediaWiki:Common.js」の版間の差分

t3
t5
72行目: 72行目:
/* スマホめにゅー */
/* スマホめにゅー */
(function() {
(function() {
     function initCustomMenu() {
     function injectMenu() {
         var $target = $('.menu ul:first');
         if ($('#p-custom-menu-item').length) return;


         if ($target.length && !$('#p-custom-accordion').length) {
         var $randomItem = $('.menu [data-event-name="menu.random"], .menu .mw-ui-icon-minerva-die').closest('li');
            var html =
                '<ul id="p-custom-accordion" class="menu--with-icons">' +
                    '<li class="menu__item" style="list-style:none;">' +
                        '<a href="#" id="custom-menu-toggle" class="menu__item--custom mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand">' +
                            '<span>リンク集</span>' +
                        '</a>' +
                    '</li>' +
                    '<div id="custom-menu-content" style="display:none; padding-left: 20px; background-color: rgba(0,0,0,0.02);">' +
                        '<li class="menu__item" style="list-style:none;"><a href="/wiki/Wiki:方針" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-notice"><span>方針</span></a></li>' +
                        '<li class="menu__item" style="list-style:none;"><a href="/wiki/特別:特別ページ一覧" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-star"><span>特別ページ一覧</span></a></li>' +
                        '<li class="menu__item" style="list-style:none;"><a href="/wiki/特別:ページ一覧" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-listBullet"><span>全てのページ</span></a></li>' +
                        '<li class="menu__item" style="list-style:none;"><a href="/wiki/特別:最近の更新" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-recentChanges"><span>最近の更新</span></a></li>' +
                    '</div>' +
                '</ul>';


            $target.before(html);
        if ($randomItem.length) {
            var items = [
                { label: '方針', url: '/wiki/Wiki:方針', icon: 'notice' },
                { label: '特別ページ一覧', url: '/wiki/特別:特別ページ一覧', icon: 'star' },
                { label: '全てのページ', url: '/wiki/特別:ページ一覧', icon: 'listBullet' },
                { label: '最近の更新', url: '/wiki/特別:最近の更新', icon: 'recentChanges' }
            ];


             $('#custom-menu-toggle').on('click', function(e) {
             var html = '';
                 e.preventDefault();
            items.forEach(function(item) {
                $('#custom-menu-content').slideToggle(200);
                 html += '<li class="menu__item" id="p-custom-menu-item" style="list-style:none;">' +
                            '<a href="' + item.url + '" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-' + item.icon + '">' +
                                '<span>' + item.label + '</span>' +
                            '</a>' +
                        '</li>';
             });
             });
            $randomItem.after(html);
         }
         }
     }
     }


     $(document).ready(initCustomMenu);
     $(document).ready(injectMenu);
     var timer = setInterval(initCustomMenu, 500);
     var timer = setInterval(injectMenu, 500);
     setTimeout(function() { clearInterval(timer); }, 5000);
     setTimeout(function() { clearInterval(timer); }, 5000);
})();
})();


console.log("OK Common.js")
console.log("OK Common.js")