ResourceLoader加载JS设置方法

来自bilibili游戏中心 - WIKI
跳到导航 跳到搜索
页面贡献者 :
丘人头
  • 区别于直接增加代码至common.js页面的全局加载的做法,通过ResourceLoader或者小工具加载JS可控制页面加载的JS数量,提升加载效率并预防JS冲突。


使用方法

  • 复制模板:ResourceLoader页面的源代码至你WIKI的模板:ResourceLoader页面;
  • 复制下方代码至你WIKI的mediawiki:common.js页面(注意将代码中碧蓝航线WIKI的域名blhx替换为你的域名,否则将加载碧蓝航线上的js代码):
/* 这里的任何JavaScript将为所有用户在每次页面载入时加载。 */
/* -- 为页面加载JS脚本或CSS样式表 -- */
/* 参见[[模板:ResourceLoader]]*/
/* 来源:碧蓝航线WIKI*/
$('.resourceLoader').each(function () {
  var $x = $(this);
  var text = $.trim($x.text());

  if (!text) return;

  //加载模块
  if ($x.data('isModule') === true)
    return mw.loader.load(text);

  //自动补充MediaWiki命名空间
  var ns = text.match('^.*?:');
  if (!ns) text = 'MediaWiki:' + text;

  //加载CSS样式表
  var mime = ($x.data('mime') || "text/javascript").toLowerCase();
  if (mime == "text/css") {
    if (text.slice(-4).toLowerCase() !== '.css') text = text + '.css';
    //if ($x.data('debug') !== true) text = text + '&debug=false';
    return mw.loader.load("//wiki.biligame.com/blhx/index.php?title=" + text + "&action=raw&ctype=text/css", "text/css");
  }

  //加载JS脚本
  if (ns && ns[0].toLowerCase() !== 'mediawiki:') {
    return console.log('ResourceLoader: 不允许加载MediaWiki以外的js脚本');
  }
  if (text.slice(-3).toLowerCase() !== '.js') text = text + '.js';
  //if ($x.data('debug') !== true) text = text + '&debug=false';
  return mw.loader.load("//wiki.biligame.com/blhx/index.php?title=" + text + "&action=raw&ctype=text/javascript", "text/javascript");
});



  • 从下方列表中查看你需要的工具,增加对应页面至你的WIKI。


目前收录的玩家工具列表