-1

我正在扩展我作为管理员的 wiki 上的排名系统,并且我希望能够:

  1. 在多个用户组中创建一组人员
  2. 在当前页面中搜索列表中的名称
  3. 根据状态在他们的名字后面附加一个图标

我知道要创建数组,我需要像这样定义它们:

var hosts = new Array("H1");
    /* Prob don't need an array for a group with one user;
    * however, will it break anything to have it?
    * There may be users added here in the future. */
var bureaucrats = new Array("B1", "B2", "B3", "B4", "B5")
var admins = new Array("A1", "A2", "A3", "...")
/* There are more, abbreviating for effect. */
var superUsers = new Array("SU1", "SU2", "SU3", "SU4", "...")
/* There are more, abbreviating for effect. */

concat()最初可以查看所有数组以查看其中一个用户是否存在。

var ranked_users = hosts.concat(bureaucrats, admins, superUsers)

我可以创建循环来遍历列表rankedUsers

var numOfUsers=rankedUsers.length;
for (i=0;i<=numOfUsers;i++)
{
    if (rankedUsers[i]==/* Not sure */)
    {
         concat(String.fromCharCode(/* Based on group */, 00a0), rankedUsers[i])
    }
}

我会2776为主机、2777官僚、2778管理员和2779超级用户使用代码。(如果我声明更多组,可能会走得更远,但扩展模式会很简单)。这是我开始卡住的地方。如何在页面上找到用户名?我使用 match() 还是 search()?

编辑:我建立了一个 jsfiddle 的开始,可以在这里找到。

4

2 回答 2

0

一段时间后再次发现这一点,我最终为每个组分配了一个类,然后使用 css 为图像添加前缀:

.group:before {
  content: '\code';
}
于 2019-12-13T16:01:03.657 回答
-1

为什么要在 JavaScript 中这样做?在解析时使用 PHP 执行此操作。

然后,您可以轻松访问正在创建的任何链接对象的名称空间和标题,并且可以在需要时采取行动(即,当名称空间为 2 [User] 并且标题是属于某个组的用户名时)。

只需使用LinkBegin 钩子编写一个简单的扩展程序并检查$user->getGroups()您要标记的组。

于 2012-05-01T01:03:59.443 回答