0
我正在製作一個podcast生成器,並已切換到使用XML dom,非常酷的東西。最後的障礙是鏈接和封閉元素。如何使用javascript創建rss/xml鏈接元素
鏈接元素被視爲HTML鏈接,並且該閉包不是自動關閉。相反,它會產生以下
<link />
<enclosure></enclosure>
對於RSS的目的應該是
<link></link>
<enclosure/>
這是當初之所以使用XML DOM,它也使XML文件正確,但現在我仍然還沒有找到如何創建rss/xml有效標記以追加到現有文件。 Thx提前。
更新:這是我正在使用的代碼。 xml被加載到無腳本中,因此可以通過主題依賴的javascript訪問最終用戶,並通過搜索引擎對SEO進行索引。在CMS模式下,我使用它作爲持有者,直到它通過xmlHTTPrequest發送到php腳本進行處理。
var retFeedOptions =document.getElementsByTagName('noscript')[0].innerText;
parser=new DOMParser();
newFeed=parser.parseFromString(retFeedOptions,"text/xml");
newEntry=newFeed.createElement('item');
newXtitle=newFeed.createElement('title');
newXlink=newFeed.createElement('link');
newXdescription=newFeed.createElement('description');
newXpubdate=newFeed.createElement('pubDate');
newXguid=newFeed.createElement('guid');
newXenclosure=newFeed.createElement('enclosure');
newEntry.appendChild(newXtitle);
newEntry.appendChild(newXlink);
newEntry.appendChild(newXdescription);
newEntry.appendChild(newXpubdate);
newEntry.appendChild(newXguid);
newEntry.appendChild(newXenclosure);
var RSSchannel =newFeed.getElementsByTagName('channel')[0];
var nextItemNode =newFeed.getElementsByTagName('item')[0];
RSSchannel.insertBefore(newEntry,nextItemNode);
document.getElementsByTagName('noscript')[0].innerHTML=(new XMLSerializer()).serializeToString(newFeed);
你應該顯示你用來產生這個的代碼... – JAAulde 2012-02-02 18:35:59
我的歉意。我正在使用的代碼已添加到OP中。 – Richard 2012-02-02 19:01:58
現在,機箱元素可以正常工作,但鏈接元素仍然會生成html鏈接元素。 – Richard 2012-02-02 19:03:55