Mediawiki小部件不会运行javascript

时间:2015-03-27 14:41:54

标签: javascript mediawiki mediawiki-extensions

我有一个荒谬的问题,似乎比实际应该困难得多。

现在已经苦苦挣扎了大约三天试图找出在维基百科上的网页上运行javascript的方法,而且似乎几乎不可能。 (我可以让它在common.js下运行,但只想在特定页面上运行。

看起来像一个选项是使用Widgets,但每当我放入脚本时,mediawiki会更改它并删除<> (将其更改为& lt和& gt),这意味着它将无法运行,我无法在任何地方找到如何让Mediawiki停止为Mediawiki或Widget扩展执行此操作。欢迎任何帮助。

作为示例,我将以下代码放在widget:redbox

    <noinclude>
This is a test
</noinclude>
<includeonly><script> type="text/javascript"> console.log("I am alie"); </script></includeonly>

我得到的是

This is a test fckLR &lt;script&gt; type="text/javascript"> console.log("I am alie"); &lt;/script&gt;fckLR

2 个答案:

答案 0 :(得分:0)

最简单的解决方案是在common.js中放置一个只有在页面上存在具有特定ID的元素时才会运行的脚本(即$( '#some-id' ).length > 0)。

答案 1 :(得分:0)

既然没有人指出我要说的话,我可能会遗漏一些东西......我也知道这篇文章很老,但是type=text/javascript是否有理由不在开场script {1}}代码?

我真的不明白为什么在开始标记之外放置属性会有用。

以防这是一个真正的错误而且就是这样,正确的语法将是

<includeonly>
  <script type="text/javascript">
    console.log("Hello, underworld!");
  </script>
</includeonly>