微件:Collapsible-block/lazyload/head
<script> (window.RLQ=window.RLQ||[]).push(function() { mw.loader.load('ext.tabberNeue'); }); function deploy(a, pageName) {
var str; pageName = pageName.replace(/gantamadeshuangyinhao/g, '\"'); var p = a.parentNode; p.style.display = "none"; p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].style.display = "block"; p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-unfolded-link")[0].style.display = "block"; p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].style.display = "block"; if (p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].innerHTML.length == 0) { p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].innerHTML = "Loading..."; var api = new mw.Api(); $(document).ajaxSuccess(function (e, xhr, opt) { if (opt.url.indexOf("makeCollapsible.js") != -1) { console.log("makeCollapsible.js loaded"); $(".mw-collapsible").makeCollapsible(); } else if (opt.url.indexOf("tablesorter.js") != -1) { console.log("tablesorter.js loaded"); $(".sortable").tablesorter(); } else if (opt.url.indexOf("tabber.js") != -1) { console.log("tabber.js loaded"); }; }); if (!!!mw.config.get('wgMFMode')) { api.get({ "action": "parse", "format": "json", "page": pageName }).done(function (data) { p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].innerHTML = data.parse.text["*"]; try { mw.loader.using('jquery.makeCollapsible').then(function () { $(".mw-collapsible").makeCollapsible(); }); } catch (err) { console.log(err); $.getScript("/resources/src/jquery/jquery.makeCollapsible.js"); } try { mw.loader.using('jquery.tablesorter').then(function () { $(".sortable").tablesorter(); }); } catch (err) { console.log(err); $.getScript("/resources/src/jquery/jquery.tablesorter.js"); } try { $(".tabber:not('.tabberlive')").tabber(); } catch (err) { console.log(err); $.getScript("//media.fgo.wiki/wiki/8/tabber.js"); } var toc = $(p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].getElementsByClassName("mw-parser-output")[0].getElementsByClassName("toc")[0]); if (!toc.hasClass('toc-custom-disable')) { var tocAfter = toc.clone().addClass('toc-custom'); toc.after(tocAfter); tocAfter.css('marginRight', -Math.min(tocAfter.outerWidth(), 347)); } }).catch(function (err) { p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].innerHTML = "加载失败:" + err; }); } else {//移动端 api.get({ "action": "parse", "format": "json", "mobileformat": true, "page": pageName }).done(function (data) { p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].innerHTML = data.parse.text["*"]; /** var hl=$(".section-heading").find("a"); for(var i=0;i<hl.length;hl++){ hl[i].href="/index.php?title="+pageName+"&action=edit§ion="+hl[i].dataset.section; } **/ var jb = $(p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0]); jb.find(".mw-ui-icon.mw-ui-icon-element.mw-ui-icon-minerva-edit-enabled.edit-page").remove(); jb.find(".section-heading").click(function () { mobileClickTitle(this) }); jb.find(".section-heading").addClass("collapsible-heading open-block"); jb.find(".section-heading").next().addClass("collapsible-block open-block"); jb.find(".mw-ui-icon.mw-ui-icon-element.indicator").addClass("mw-ui-icon-mf-arrow mf-mw-ui-icon-rotate-flip"); jb.find(".section-heading.collapsible-heading.open-block").trigger('click') try { mw.loader.using('jquery.makeCollapsible').then(function () { $(".mw-collapsible").makeCollapsible(); }); } catch (err) { console.log(err); $.getScript("/resources/src/jquery/jquery.makeCollapsible.js"); } /**移动端都没有tablesorter try{ mw.loader.using('jquery.tablesorter').then(function(){$(".sortable").tablesorter();}); }catch(err){ console.log(err); $.getScript("/resources/src/jquery/jquery.tablesorter.js"); } **/ try { $(".tabber:not('.tabberlive')").tabber(); } catch (err) { console.log(err); $.getScript("//media.fgo.wiki/wiki/8/tabber.js"); } var toc = $(p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].getElementsByClassName("mw-parser-output")[0].getElementsByClassName("toc")[0]); if (!toc.hasClass('toc-custom-disable')) { var tocAfter = toc.clone().addClass('toc-custom'); toc.after(tocAfter); tocAfter.css('marginRight', -Math.min(tocAfter.outerWidth(), 347)); } }).catch(function (err) { p.parentNode.getElementsByClassName("collapsible-block-unfolded")[0].getElementsByClassName("collapsible-block-content")[0].innerHTML = "加载失败:" + err; }); } }
} function collapse(a) {
var p = a.parentNode; p.style.display = "none"; p.parentNode.getElementsByClassName("collapsible-block-content")[0].style.display = "none"; p.parentNode.parentNode.getElementsByClassName("collapsible-block-folded")[0].style.display = "block";
} function mobileClickTitle(d) {
if ($(d).hasClass("open-block")) { $(d).removeClass("open-block"); $(d).children("div").removeClass("mf-mw-ui-icon-rotate-flip"); $(d).next().removeClass("open-block"); } else { $(d).addClass("open-block"); $(d).children("div").addClass("mf-mw-ui-icon-rotate-flip"); $(d).next().addClass("open-block"); }
} </script> <style>.collapsible-block-folded a.collapsible-block-link {
display: inline-block; padding: 4px 8px; border-radius: 4px; background-color: #4487DF; color: white; text-decoration: none !important;
}
.collapsible-block-unfolded a.collapsible-block-link {
display: inline-block; padding: 4px 8px; border-radius: 4px; background-color: #E7615C; color: white; text-decoration: none !important;
}
</style>