在Forumotion上使用PunBB的想法是使用Points系统用一串文本替换显示的点数。使用span类,我首先在代码中定义了一个类“荣誉点”,该代码显示了用户拥有的点数。JQuery/PunBB用字符串替换数字
<span class="honorpoints"><!-- BEGIN profile_field -->{postrow.displayed.profile_field.CONTENT}<!-- END profile_field --></span>
在论坛上使用该代码时,它将在用户名旁边显示一个基于用户点数的数字。以下jQuery代码是我试图用来替换数字的。
$(".honorpoints").each(function(){
var elm = $(this);
var number = parseFloat(elm.text(), 10);
if (number >= 1 && number <= 500) {
state = "rank 1";
} else if (number >= 500 && number < 3000) {
state = "rank 2";
}
elm.text(state);
});
但是,这并没有做任何事情,数字仍然存在。它应该用UserA:1和UserB:2代替UserA:234和UserB:571。但是,当在jsFiddle上使用代码时,以及仅使用数字代替{postrow.displayed.profile_field.CONTENT}代码。 帮助表示赞赏!
我们可以看到'{postrow.displayed.profile_field.CONTENT}'输出了什么吗?在'var elm = $(this);'声明后面放置了一个'console.log('''+ elm.text()+'“');'后面会生成(F12,Console标签以查看控制台输出FF或Chrome上的Firebug或开发者工具)? – 2012-08-01 00:02:13
@ZachShipley在检查Chrome中的元素时,输入console.log代码似乎没有做任何事情。这是一个链接到论坛的一部分,在海报的名字右边是一个数字和他们的等级。这个数字在“荣誉点”的跨度类中,但代码似乎甚至没有影响到它。 http://www.bvgstudios.net/t141-community-keep-communicating-7-10-2012 – user1567186 2012-08-01 00:17:07