MediaWiki为模块中提供了很多标签使用方法,皆为面向对象的。本页面介绍它们。
mw.html.create(【标签名字】)是使用对象的第一步。这个函数将返回一个标签对象。如果没有提供参数,则返回一个没有标签的空标签对象。
这个元方法使对象变为字符串。因此你可以使用tostring()。
向这个对象中输入text,添加在关闭标签(空标签对象添加在末尾)的前面。text可以是nil、字符串或数字。不能输入标签对象。如要使用,请先tostring()。返回结果为对象自身。
向对象增加一个值为value的attrHTML属性。请注意这个方法会覆盖原有属性。返回结果为对象自身。
向对象增加class类。不会覆盖原有的。class可以是包含一个或多个类的一个字符串。返回结果为对象自身。
向对象增加css的CSS文本。不会覆盖原有的。返回结果为对象自身。
向对象增加一个值为value的cssCSS属性。不会覆盖原有的。返回结果为对象自身。
创建一个新的name标签对象,然后向原来对象中输入这个新对象,添加在关闭标签的前面(空标签对象添加在末尾),并将原来对象设置为新对象的一个属性(父对象)。返回结果为新的对象。
:tag(name)增加一缩进。:done()(第一种情况)减少一缩进。:done()之前是没有值的。并且只有:done()后面可以加分号。当然你可以全都不换行,但那怎么好看呢?obj = mw.html.create("div")
:addClass("foo")
:tag("span")
:css("color","#114514")
:wikitext("bar")
:done()
:done(),obj就成了一个span而不是div。obj = obj:done()
记住不能漏掉“obj =”,因为:done()不作任何操作,只返回值。
obj = mw.html.create("div")
obj:addClass("foo")
:tag("span")
:css("color","#114514")
:wikitext("bar")
:done()
:wikitext("emm")
obj = mw.html.create("div")
:addClass("foo")
:tag("span")
obj:css("color","#114514")
:wikitext("bar")
:done()
:wikitext("emm")
两者区别在于,第一个执行完毕后是div,而第二个是span。这就告诉我们使用:done()一定要弄清变量是否有指向自己想要的对象,自己是在赋值还是直接操作。
| |||||||||||||||||||||||||||||||||||