Miliastra admin (トーク | 投稿記録) デスクトップ表示時だけ、フッターに「モバイル表示」リンクを追加 |
Miliastra admin (トーク | 投稿記録) 編集の要約なし |
||
| 1行目: | 1行目: | ||
/* ここにあるすべてのJavaScriptは、すべてのページ読み込みですべての利用者に対して読み込まれます */ | /* ここにあるすべてのJavaScriptは、すべてのページ読み込みですべての利用者に対して読み込まれます */ | ||
// | /* Add "モバイル表示" toggle link on desktop skins without touching existing links */ | ||
mw.loader.using( | mw.loader.using('mediawiki.util').then(function () { | ||
// Minerva(モバイル)では出さない | |||
if (mw.config.get('skin') === 'minerva') return; | |||
var page = mw.config.get('wgPageName'); | |||
if (!page) return; | |||
var url = mw.util.getUrl(page, { mobileaction: 'toggle_view_mobile' }); | |||
// 追加済みなら何もしない(多重追加を防止) | |||
if (document.getElementById('mw-toggle-mobile-view')) return; | |||
// 1) フッター “footer-places” があればそこに li を追加 | |||
} | var places = document.getElementById('footer-places'); | ||
if (places && places.tagName === 'UL') { | |||
var li = document.createElement('li'); | |||
var a = document.createElement('a'); | |||
a.id = 'mw-toggle-mobile-view'; | |||
a.href = url; | |||
a.textContent = 'モバイル表示'; | |||
li.appendChild(a); | |||
places.appendChild(li); | |||
return; | |||
} | |||
// 2) だめなら “ツール(p-tb)” に追加 | |||
if (document.getElementById('p-tb')) { | |||
mw.util.addPortletLink('p-tb', url, 'モバイル表示', 'mw-toggle-mobile-view'); | |||
return; | |||
} | |||
// 3) 最後の手段として“個人メニュー(p-personal)”に追加 | |||
if (document.getElementById('p-personal')) { | |||
mw.util.addPortletLink('p-personal', url, 'モバイル表示', 'mw-toggle-mobile-view'); | |||
} | |||
}); | }); | ||
2025年11月13日 (木) 03:08時点における版
/* ここにあるすべてのJavaScriptは、すべてのページ読み込みですべての利用者に対して読み込まれます */
/* Add "モバイル表示" toggle link on desktop skins without touching existing links */
mw.loader.using('mediawiki.util').then(function () {
// Minerva(モバイル)では出さない
if (mw.config.get('skin') === 'minerva') return;
var page = mw.config.get('wgPageName');
if (!page) return;
var url = mw.util.getUrl(page, { mobileaction: 'toggle_view_mobile' });
// 追加済みなら何もしない(多重追加を防止)
if (document.getElementById('mw-toggle-mobile-view')) return;
// 1) フッター “footer-places” があればそこに li を追加
var places = document.getElementById('footer-places');
if (places && places.tagName === 'UL') {
var li = document.createElement('li');
var a = document.createElement('a');
a.id = 'mw-toggle-mobile-view';
a.href = url;
a.textContent = 'モバイル表示';
li.appendChild(a);
places.appendChild(li);
return;
}
// 2) だめなら “ツール(p-tb)” に追加
if (document.getElementById('p-tb')) {
mw.util.addPortletLink('p-tb', url, 'モバイル表示', 'mw-toggle-mobile-view');
return;
}
// 3) 最後の手段として“個人メニュー(p-personal)”に追加
if (document.getElementById('p-personal')) {
mw.util.addPortletLink('p-personal', url, 'モバイル表示', 'mw-toggle-mobile-view');
}
});