我有这部分代码属于我正在处理的网站(谷歌博客)的js文件。
function labelset(e) {
var a = e.entry,
t = a.category[0].term;
document.write('<div class="post-cat"><a href="/search/label/' + t + '">' + t + "</a></div>")
};
使用此功能,用户可以获得飞行&#34; div
覆盖索引页面中的每个帖子,显示每个帖子的相关标签。我的问题是,如果帖子有多个标签,这个功能只显示第一个标签alphabetically
!知道我怎么能得到它们呢?
答案 0 :(得分:2)
我想出了以下脚本,其中显示了所有帖子标题及其所有相应的标签..为了便于理解我已经使每个变量都自我解释..它在博客中完美运作..
<script type="text/javascript">
function LoadDetails(TotalFeed) {
var PostTitles = new Array();
var PostURLs = new Array();
var PostLabels=new Array();
var d="";
if ("entry" in TotalFeed.feed) {
var PostEntries = TotalFeed.feed.entry.length;
for (var PostNum = 0; PostNum < PostEntries; PostNum++) {
var ThisPost = TotalFeed.feed.entry[PostNum];
PostTitles.push(ThisPost.title.$t);
d="";
if("category"in TotalFeed.feed.entry[PostNum])
{
for(var b=0;b<TotalFeed.feed.entry[PostNum].category.length;b++)
d+='<a href="/search/label/'+TotalFeed.feed.entry[PostNum].category[b].term+'?max-results=8">'+TotalFeed.feed.entry[PostNum].category[b].term+"</a> \u002C ";
b=d.lastIndexOf(" \u002C ");-1!=b&&(d=d.substring(0,b))
}
var ThisPostURL;
for (var LinkNum = 0; LinkNum < ThisPost.link.length; LinkNum++) {
if (ThisPost.link[LinkNum].rel == "alternate") {
ThisPostURL = ThisPost.link[LinkNum].href;
break;
}
}
PostURLs.push(ThisPostURL);
PostLabels.push(d);
}
}
DisplayPosts(PostTitles, PostURLs, PostLabels);
}
function DisplayPosts(PostTitles, PostURLs, PostLabels) {
var NumberOfEntries = PostTitles.length;
document.write('<ul class="blogger-archive">');
for (var EntryNum = 0; EntryNum < NumberOfEntries; EntryNum++) {
document.write('<li><a href ="' + PostURLs[EntryNum] + '">' + PostTitles[EntryNum] + "</a> | <span>"+PostLabels[EntryNum]+"</span></li>");
}
document.write('</ul>');
}
</script>
<script type="text/javascript" src="/feeds/posts/default?max-results=500&alt=json-in-script&callback=LoadDetails"></script>
*在你的情况下它应该是这样的......
function labelset(e) { //Note:- e must be TotalFeed.feed
var a = e.entry;
for(var b=0;b<a.category.length,b++){
document.write('<div class="post-cat"><a href="/search/label/' + a.category[b].term + '">' + a.category[b].term + "</a></div>");
}};
希望这会有所帮助..