MediaWiki:Mobile.js
注意: 保存後、変更を確認するにはブラウザーのキャッシュを消去する必要がある場合があります。
- Firefox / Safari: Shift を押しながら 再読み込み をクリックするか、Ctrl-F5 または Ctrl-R を押してください (Mac では ⌘-R)
- Google Chrome: Ctrl-Shift-R を押してください (Mac では ⌘-Shift-R)
- Internet Explorer / Microsoft Edge: Ctrl を押しながら 最新の情報に更新 をクリックするか、Ctrl-F5 を押してください
- Opera: Ctrl-F5を押してください
mw.loader.using([ 'mediawiki.util' ], function() {
/** &withJS= URL parameter, &withCSS= URL parameter *******
* [[mw:Snippets/Load JS and CSS by URL]]より。MediaWiki空間に置かれているスクリプトまたはスタイルシートを
* [[Special:Mypage/common.js]]または[[Special:Mypage/common.css]]を編集しないで体験できるようにする
* @source https://www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL
* @revision 2020-04-04
*/
var extraCSS = mw.util.getParamValue( 'withCSS' ),
extraJS = mw.util.getParamValue( 'withJS' );
if ( extraCSS ) {
// WARNING: DO NOT REMOVE THIS "IF" - REQUIRED FOR SECURITY (against XSS/CSRF attacks)
if ( /^MediaWiki:[^&<>=%#]*\.css$/.test( extraCSS ) ) {
mw.loader.load( '/w/index.php?title=' + encodeURIComponent( extraCSS ) + '&action=raw&ctype=text/css', 'text/css' );
} else {
mw.notify( 'MediaWiki名前空間のページのみ許可されています。', { title: 'withCSSパラメータの値が不正です' } );
}
}
if ( extraJS ) {
// WARNING: DO NOT REMOVE THIS "IF" - REQUIRED FOR SECURITY (against XSS/CSRF attacks)
if ( /^MediaWiki:[^&<>=%#]*\.js$/.test( extraJS ) ) {
mw.loader.load( '/w/index.php?title=' + encodeURIComponent( extraJS ) + '&action=raw&ctype=text/javascript' );
} else {
mw.notify( 'MediaWiki名前空間のページのみ許可されています。', { title: 'withJSパラメータの値が不正です' } );
}
}
});
var timer = setInterval(function() {
if ($('.menu ul:first').length) {
//console.log("mobile menu exists");
clearInterval(timer);
$('.menu ul:first').after(
'<ul class="level1"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-watchlist"> \
<span>三男掲示板</span> \
</a> \
</li> \
<ul class ="level2"> \
<li> \
<a href="/wiki/%E4%B8%89%E7%94%B7%E6%8E%B2%E7%A4%BA%E6%9D%BF" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>三男掲示板</span> \
</a> \
</li> \
<li> \
<a href="/wiki/%E4%B8%89%E7%94%B7%EF%BC%B1%EF%BC%86%EF%BC%A1%E9%83%A8" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>Q&A</span> \
</a> \
</li> \
<li> \
<a href="/wiki/%E4%B8%89%E7%94%B7%E6%8E%B2%E7%A4%BA%E6%9D%BF%E3%81%AE%E3%83%AB%E3%83%BC%E3%83%AB" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>ルール</span> \
</a> \
</li> \
<li> \
<a href="/wiki/%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%BB%E6%A9%9F%E8%83%BD" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>コマンド一覧</span> \
</a> \
</li> \
<li> \
<a href="/wiki/%E4%B8%89%E7%94%B7%E6%8E%B2%E7%A4%BA%E6%9D%BF%E3%81%AE%E9%81%BF%E9%9B%A3%E6%89%80%E4%B8%80%E8%A6%A7" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>避難所一覧</span> \
</a> \
</li> \
<li> \
<a href="/wiki/%E4%B8%89%E7%94%B7%E6%8E%B2%E7%A4%BA%E6%9D%BF%E5%B9%B4%E8%A1%A8" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>年表</span> \
</a> \
</li> \
</ul> \
</ul> \
<ul class="level3"> \
<li> \
<a href="#" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-watchlist"> \
<span>アフィカス対策</span> \
</a> \
</li> \
<ul class ="level4"> \
<li> \
<a href="/wiki/%E3%82%A2%E3%83%95%E3%82%A3%E3%82%AB%E3%82%B9%E5%AF%BE%E7%AD%96" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>アフィカス対策</span> \
</a> \
</li> \
<li> \
<a href="/wiki/DMCA%E3%83%86%E3%82%A4%E3%82%AF%E3%83%80%E3%82%A6%E3%83%B3" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>DMCAテイクダウン</span> \
</a> \
</li> \
<li> \
<a href="/wiki/%E5%AF%BEYouTube%E3%81%B8%E3%81%AE%E3%82%A2%E3%83%95%E3%82%A3%E3%82%AB%E3%82%B9%E5%AF%BE%E7%AD%96" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>対YouTube</span> \
</a> \
</li> \
</ul> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
});
$(".menu").find(".level4").hide(); // hide level2 until level1 is clicked
$(".level3").click(function(event){
$(this).find(".level4").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}, 100); // check every 100ms