「MediaWiki:Common.js」の版間の差分
細 t |
細 t2 |
||
| 73行目: | 73行目: | ||
(function() { | (function() { | ||
function initCustomMenu() { | function initCustomMenu() { | ||
var $target = $('.menu ul:first'); | |||
var $target = $('.menu | |||
if ($target.length && !$('#p-custom-accordion').length) { | if ($target.length && !$('#p-custom-accordion').length) { | ||
var html = | var html = | ||
'<ul | '<ul id="p-custom-accordion" class="hlist" style="border-bottom: 1px solid #eaecf0; padding-bottom: 5px;">' + | ||
'<li class="menu__item | |||
'< | '<li class="menu__item">' + | ||
'<a href="#" id="custom-menu-toggle" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-mf-expand" style="font-weight:bold;">' + | |||
'<span>Wikiリンク</span>' + | |||
'</a>' + | |||
'</li>' + | '</li>' + | ||
'<div | '<div id="custom-menu-content" style="display:none; background-color: #f8f9fa; margin-left: 10px; border-radius: 4px;">' + | ||
'<li class="menu__item"><a href="/wiki/Wiki:方針" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-notice"><span>方針</span></a></li>' + | '<li class="menu__item"><a href="/wiki/Wiki:方針" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-notice"><span>方針</span></a></li>' + | ||
'<li class="menu__item"><a href="/wiki/特別:特別ページ一覧" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-star"><span>特別ページ一覧</span></a></li>' + | '<li class="menu__item"><a href="/wiki/特別:特別ページ一覧" class="mw-ui-icon mw-ui-icon-before mw-ui-icon-star"><span>特別ページ一覧</span></a></li>' + | ||
| 94行目: | 93行目: | ||
'</ul>'; | '</ul>'; | ||
$target.before(html); | $target.before(html); | ||
$('# | $('#custom-menu-toggle').on('click', function(e) { | ||
e.preventDefault(); | e.preventDefault(); | ||
$(' | $('#custom-menu-content').slideToggle(200); | ||
$(this).toggleClass('mw-ui-icon-mf-expand mw-ui-icon-mf-collapse'); | |||
}); | }); | ||
} | } | ||
} | } | ||
$(document).ready(initCustomMenu); | $(document).ready(initCustomMenu); | ||
var retry = 0; | var retry = 0; | ||
var timer = setInterval(function() { | var timer = setInterval(function() { | ||
initCustomMenu(); | initCustomMenu(); | ||
if (++retry > | if (++retry > 20) clearInterval(timer); | ||
}, | }, 300); | ||
})(); | })(); | ||
console.log("OK Common.js") | console.log("OK Common.js") | ||