0

使用代码

$(".name").html("john");

我可以将页面上的所有名称更改为 john,这太棒了,让我的生活变得轻松。
但是,我需要能够从函数中保留我的模组名称。我该如何设置例外?

$(".name:not(.mod)").html("john");

不会工作,因为只有当他们打开他们的 mod 标签时才会添加一个 mod 类,而且大多数时候,他们将它们关闭,只使用他们的名字。

4

2 回答 2

1

如果除了他们的名字之外没有任何实际数据可以从其他用户中辨别出模组,那么唯一的方法就是手动挑选它们。

$(".name").filter( function() {
    return $(this).text() !== 'Mary Moderator' 
        && $(this).text() !== 'Aaron Admin'; 
     // && ...
}).html("john");

演示:http: //jsfiddle.net/WQDpb/

于 2013-06-15T12:42:10.033 回答
0
$(".name:not(.mod)").html("john");

只需给 mods 一个类并使用:not()选择器将它们过滤掉。

如果您需要先更改名称然后恢复它们,请使用jQuery.data()

$(".name").each(function() {
   var $this = $(this);
   $.data(this, "name", $this.html());
   $this.html("john");
});

您现在可以使用以下方法检索原始名称:

var name = $.data(el, "name");
于 2013-06-15T12:31:26.870 回答