Site Notice
hello, world
Difference between revisions of "MediaWiki:Common.js"
From Project-EPB Commons
([InPageEdit] 没有编辑摘要) |
([InPageEdit] 没有编辑摘要) |
||
Line 88: | Line 88: | ||
$this.attr({ 'id': echartsElement }); | $this.attr({ 'id': echartsElement }); | ||
echarts.init(document.getElementById(echartsElement)).setOption(option); | echarts.init(document.getElementById(echartsElement)).setOption(option); | ||
+ | console.log("(" + $this.text() + ")"); | ||
}); | }); | ||
} | } |
Revision as of 16:11, 28 January 2020
/* Any JavaScript here will be loaded for all users on every page load. */
mw.loader.load('https://wjghj.cn/index.php?title=MediaWiki:NotifyWhenCopy.js&action=raw&ctype=text/javascript');
mw.loader.load('https://common.wjghj.cn/js/SsiModal');
/** Prettyprint **/
$(function () {
var pagename = mw.config.get('wgPageName');
if (pagename.substr(pagename.length - 3, 3) === '.js') {
$('#mw-content-text pre').addClass('prettyprint lang-js linenums');
} else if (pagename.substr(pagename.length - 4, 4) === '.css') {
$('#mw-content-text pre').addClass('prettyprint lang-css linenums');
}
mw.loader.load('https://common.wjghj.cn/js/prettify');
mw.loader.load('https://common.wjghj.cn/css/prettify', 'text/css');
});
/** JS Minify **/
mw.loader.load('https://common.wjghj.cn/js/JsMin');
var jsminModal = function (originaltext) {
ssi_modal.show({
className: 'in-page-edit minify-js',
outSideClose: false,
center: true,
title: '压缩JS代码',
content: '<section><textarea id="minifyjs-text" style="width:100% !important;min-height:350px;"></textarea><label for="minifyjs-conment">评论:</label><textarea id="minifyjs-conment" style="width:100% !important;min-height:50px;"></textarea><label for="minifyjs-level">压缩等级:</label><select id="minifyjs-level"><option value="1">最小压缩</option><option value="2" selected="selected">普通压缩</option><option value="3">超级压缩</option></select><hr/><b>压缩前: </b><span id="minifyjs-oldsize">-</span> <b>压缩后: </b><span id="minifyjs-newsize">-</span> <b>压缩率: </b><span id="minifyjs-ratio">0.00%</span></section>',
buttons: [{
label: '关闭',
className: 'btn btn-secondary',
method: function (e, modal) { modal.close() }
}, {
label: '压缩',
className: 'btn btn-primary',
method: function (e, modal) {
$('#minifyjs-text').val(jsmin($('#minifyjs-conment').val(), $('#minifyjs-text').val(), $('#minifyjs-level').val()));
$('#minifyjs-oldsize').html(jsmin.oldSize);
$('#minifyjs-newsize').html(jsmin.newSize);
$('#minifyjs-ratio').html((Math.round(jsmin.newSize / jsmin.oldSize * 1000) / 10) + '%');
}
}],
onShow: function () {
$('#minifyjs-text').val(originaltext);
}
});
}
if (wgNamespaceNumber === 8 && wgAction === 'edit' && wgPageName.substr(wgPageName.length - 3, 3) === '.js') {
$('.editButtons').append('<div class="wgMinifyJs in-page-edit" style="float:right"><a href="javascript:;" id="minify-js" class="btn btn-primary">压缩JS</a></div>');
$('#minify-js').click(function () {
jsminModal($('#wpTextbox1').val());
});
}
/** Demo **/
switch (mw.config.get('wgPageName')) {
case 'InPageEdit-v2':
case 'InPageEdit-v2/API':
case '受限制页面':
mw.loader.load('https://common.wjghj.cn/js/InPageEdit-v2');
break;
}
/** Global script (gtag.js) - Google Analytics **/
mw.loader.load('https://www.googletagmanager.com/gtag/js?id=UA-148909815-2');
$(window).load(function () {
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'UA-148909815-2');
});
/**
* ECharts
* Put ECharts on wiki pages
* Apache licenses https://www.echartsjs.com
**/
$(function () {
if ($('.echarts, .ECharts, .Echarts').length > 0) {
mw.loader.load('https://cdn.bootcss.com/echarts/4.4.0-rc.1/echarts.min.js'); // ECharts CDN
var tryEcharts = setInterval(function () {
if (typeof (echarts) !== 'undefined') {
clearInterval(tryEcharts);
$('.echarts, .ECharts, .Echarts').each(function () {
var $this = $(this),
option = eval("(" + $this.text() + ")"),
echartsElement = 'echartsElement-' + $this.index();
$this.attr({ 'id': echartsElement });
echarts.init(document.getElementById(echartsElement)).setOption(option);
console.log("(" + $this.text() + ")");
});
}
}, 500);
}
});