User:A2569875-sandbox/SVGFix.js
外观
注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google Chrome、Firefox、Microsoft Edge及Safari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。
(function($, mw) {
var imgs = $('a.image');
var svgs = [];
var svg_wikitext = "";
for(var i=0; i<imgs.length; ++i){
if(/\.svg$/.exec(imgs[i].href)){
var filename = (/\/wiki\/.+/.exec(imgs[i].href)||[""])[0].replace(/^\/?wiki\/[^:]+:/,'').trim();
if(filename != ""){
svgs.push(imgs[i]);
svg_wikitext += $('<span>').attr('id',svgs.length - 1).html('[[Media:' + filename + ']]').prop('outerHTML');
}
}
}
var params = {
action: 'parse',
text: svg_wikitext,
format: 'json'
};
var api = new mw.Api();
api.get(params).done(data => {
var $svg_paths = $(data.parse.text[0] || data.parse.text['*'] || '');
if(($svg_paths.length || 0) > 0){
var svg_paths = $svg_paths.find("span");
for(var i=0; i<svg_paths.length; ++i){
var $it = $(svg_paths[i]);
var $link = $it.find("a");
var id = $it.attr('id');
if(svgs[id]){
var svglink = $link.attr('href');
var $img_item = $(svgs[id]).find("img");
$img_item.attr('src', svglink);
$img_item.attr('srcset', svglink);
/*$.ajax({
url:$link.attr('href'),
method:'get',
success:function(res){console.log(res)},
error:function(err){console.log(err)},
});*/
}
}
}
});
})(jQuery, mw);