【发布时间】:2022-01-11 06:07:02
【问题描述】:
我使用此代码在我的博客中显示热门评论员:http://yabtb.blogspot.com/2012/05/top-commenters-gadget-with-avatars.html,我们可以选择排除某些名称。
我现在面临的问题是我一直在寻找解决方案,或者至少是关于如何解决它的答案或线索,是脚本无法识别某些带有奇怪/特殊符号的名称要排除.
这是我们插入名称的部分和一个(最后一个)的示例,我不能排除:
var excludeUsers = ["Anonymous","Anónimo","Unknown","joão amarelado","► JUCA ELE ◄"]; // exclude these usernames
到目前为止,我列出的所有名字都很好用,但不幸的是,我认为不再可以向代码创建者寻求帮助了,所以我最后的希望是这里是否有更精通编码的人可以提供帮助。
我尝试转换名称、转义符号并尝试了一些 jquery 脚本来查看名称是否被 .text() 或 html() 识别,它是...
我认为这可能是阅读提要的部分:
var authorUri = "";
if(entry.author[0].uri && entry.author[0].uri.$t != "")
authorUri = entry.author[0].uri.$t;
if(excludeMe && authorUri != "" && authorUri == urlMyProfile)
continue;
var authorName = entry.author[0].name.$t;
if(excludeUsers.indexOf(authorName) != -1)
continue;
var hash=entry.author[0].name.$t + "-" + authorUri;
if(topcommenters[hash])
topcommenters[hash].count++;
else {
var commenter = new Object();
commenter.author = entry.author[0];
commenter.count = 1;
topcommenters[hash] = commenter;
}
但我的知识并不多,看不出可能是什么问题。
感谢您提供的任何帮助。
【问题讨论】:
-
你从某个地方得到了这个名字,一个数据库等等。它通常如何在代码中呈现?
-
这些名字来自评论的人,是我将它们放入脚本中。我只是去评论,复制名称并将其粘贴到脚本中。一直有效并且确实有效,除了带有这些符号的姓氏。同一用户有另一个帐户,其昵称中也有奇怪的符号,并且脚本不会从小工具中排除。但现在我想你在问脚本从哪里获得名称,即来自博客提要通过 json: https://'+window.location.hostname+'/feeds/cmets/default...&start-index=' +ndxbase+'&alt=json-in-script&callback=showTopCommenters
-
在 unicode 中有一些不可见的字符,并且有几种可能的编码等等。手动复制和粘贴呈现的名称可能会丢失一些东西。通过代码提取名称将为您提供计算机看到的名称,以便正确匹配。也许
console.log(entry.author[0].name.$t)某处。
标签: javascript jquery utf-8 blogger