「MediaWiki:Mobile.js」の版間の差分
ナビゲーションに移動
検索に移動
Sufee Admin (トーク | 投稿記録) 編集の要約なし |
Sufee Admin (トーク | 投稿記録) 編集の要約なし |
||
19行目: | 19行目: | ||
const mainText = json['query']['pages'][0]['revisions'][0]['content']; | const mainText = json['query']['pages'][0]['revisions'][0]['content']; | ||
if(mainText.length >= 1){ | if(mainText.length >= 1){ | ||
let temp = mainText.split("\n"); | //let temp = mainText.split("\n"); | ||
console.log( | console.log(mainText); | ||
} | } |
2022年2月7日 (月) 02:31時点における版
/* ここにある全てのJavaScriptはモバイル版サイトの利用者に影響します */
var timer = setInterval(function() {
function getSidebar(){
const request = new XMLHttpRequest();
const params = 'action=query&prop=revisions&rvprop=content&titles=MediaWiki:Sidebar&formatversion=2&format=json'
request.open('GET', "https://wiki.sufee.net/api.php?"+params);
request.responseType = 'json';
request.send();
request.onload = function (){
try{
set(formatResponse(request.response));
}catch(e){
console.error(e);
}
}
}
function formatResponse(json){
const mainText = json['query']['pages'][0]['revisions'][0]['content'];
if(mainText.length >= 1){
//let temp = mainText.split("\n");
console.log(mainText);
}
}
function set(data){
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>Dropdown Links</span> \
</a> \
</li> \
<ul class ="level2"> \
<li> \
<a href="/wiki/Link_1" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>Link 1</span> \
</a> \
</li> \
<li> \
<a href="/wiki/Link_2" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>Link 2</span> \
</a> \
</li> \
<li> \
<a href="/wiki/Link_3" \
class="mw-ui-icon mw-ui-icon-before"> \
<span>Link 3</span> \
</a> \
</li> \
</ul> \
</ul> \
<ul> \
<li> \
<a href="/wiki/Second_Link" \
class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-watchlist"> \
<span>Second Link</span> \
</a> \
</li> \
</ul>'
);
$(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
$(".level1").click(function(event){
$(this).find(".level2").slideToggle(500);
}); // if level1 is clicked, dropdown level2
}
}
function init(){
getSidebar();
}
init();
}, 100);