mediawiki 1.16.5:加载特定命名空间的javascript

mediawiki 1.16.5:加载特定命名空间的javascript,javascript,mediawiki,Javascript,Mediawiki,我正在为Mediawiki开发一个扩展,该扩展基于另一个扩展(内部开发),该扩展不适用于上面版本为superior 1.16.5的Mediawiki安装。我需要在属于特定名称空间的页面中包含javascript,并且不能使用ResourceLoader 有人知道这有没有简单的方法吗?我需要包括JQuery和Datatables,以便自定义呈现属于名称空间的页面。至少有三种方法可以做到这一点 第一种方法是编辑神奇的页面MediaWiki:Common.js,并添加如下内容: if(wgNamesp

我正在为Mediawiki开发一个扩展,该扩展基于另一个扩展(内部开发),该扩展不适用于上面版本为superior 1.16.5的Mediawiki安装。我需要在属于特定名称空间的页面中包含javascript,并且不能使用
ResourceLoader


有人知道这有没有简单的方法吗?我需要包括JQuery和Datatables,以便自定义呈现属于名称空间的页面。

至少有三种方法可以做到这一点

第一种方法是编辑神奇的页面
MediaWiki:Common.js
,并添加如下内容:

if(wgNamespaceNumber == 0) { // NS_MAIN
  importScript('MediaWiki:MyScript.js');
}
您可以在块中放置任意javascript,其中的
importScript
位用于执行存储在Wiki页面中的javascript,但也有其他方法可以动态地包含JS(参见示例)。有关MediaWiki方面的详细信息,请参阅

第二种方法是攻击生成MediaWiki页面的PHP,根据当前名称空间插入
标记,但这需要更多的参与:您需要构建一个自定义扩展,并在适当的点将其挂钩。ParserAvertidy挂钩看起来很合适,请参见


第三种方法是简单地编辑皮肤并为wiki中的每个页面加载JS——你不想对每个页面都这样做有什么原因吗?无论如何,它们都是缓存的,所以这只是一次性点击。

谢谢。这就是我一直在寻找的答案。我将采用
MediaWiki:Common.js
方法。谢谢你的链接!