像下面這樣
明明休閒下面只有一個分類
但是休閒這個根目錄會把下面所有子目錄的文章總和加總
應該根目錄要顯示的是下面的子分類目錄數量
子分類數目到最底層才顯示文章數量
當初數量是從 Blogger api 擷取出來的
所以要達成這個目標(根目錄要顯示的是下面的子分類目錄數量)
我們自己補充算法
紅字體是跟舊 code 比新增的程式
function TAG(label, id, sid, pid, subdir_count, count, url)
{
this.label = label;
this.id = id;
this.sid = sid;
this.pid = pid;
this.subdir_count = subdir_count;
this.count = count;
this.url = url;
}
var tag = new Object();
var id = 0;
function add_Tag(tagString, count, url, dir)
{
var seq_id = 0;
var pre_id = 0;
var re_all = new RegExp("\\[(.+)\\]","g");
var re_array = new RegExp("\\[(.+?)\\]","g");
var m_all = tagString.match(re_all);
var m_array = tagString.match(re_array);
for (arrayNumber in m_array) // 抓取現在 add_Tag 每一個[分類]
{
var same = 0;
for (labelNumber in tag) // 抓取已經紀錄的[分類]
{
if (tag[labelNumber].label == m_array[arrayNumber]) // 檢查是不是已經有此[分類]在紀錄中
{
// 連 id 也要檢查 避免在不同整體分類中有相同的[分類]名稱 例如 [A][B] 跟 [C][A] 中的 [A] 是不同的分類
if (tag[labelNumber].sid == seq_id)
{
same = 1;
pre_id = tag[labelNumber].id;
tag[labelNumber].subdir_count++;
tag[labelNumber].count += parseInt(count);
}
}
}
if (!same) // 新增[分類]
{
id++;
tag[id] = new TAG(m_array[arrayNumber], id, seq_id, pre_id, 1, parseInt(count), "");
pre_id = id;
}
seq_id++;
}
id++;
if (m_array == null) // 是不是連[分類]都沒有
{
tag[id] = new TAG(tagString, id, seq_id, pre_id, 0, parseInt(count), url);
}
else
{
var final_tag = tagString.substring(m_all[0].length,tagString.length);
tag[id] = new TAG(final_tag, id, seq_id, pre_id, 0, parseInt(count), url);
}
}
顯示的部份要整個新增
把原來的
for (personNumber in tag) {
d.add(tag[personNumber].id, tag[personNumber].pid, tag[personNumber].label+"("+tag[personNumber].count+")", tag[personNumber].url);
}
換成
for (personNumber in tag)
{
if (tag[personNumber].subdir_count == 0)
d.add(tag[personNumber].id, tag[personNumber].pid, tag[personNumber].label+"("+tag[personNumber].count+")", tag[personNumber].url);
else
d.add(tag[personNumber].id, tag[personNumber].pid, tag[personNumber].label+"("+tag[personNumber].subdir_count+"/"+tag[personNumber].count+")", tag[personNumber].url);
}
這樣就完成了
不行耶....... 試了六個小時.....
回覆刪除你要配合前面一篇看
回覆刪除如果還有不知道如何修改的可以回覆給我
你好,我將您的兩個網站內容整理一下放在我的Blog裡
回覆刪除先跟您報備一下,如果不行我再刪除,謝謝。
http://novathinking.blogspot.com/2011/07/blogger_05.html