请帮忙!我从外部域获取RSS源,并且我使用javascipt生成每个项目(标题,日期,链接),现在是'链接' item作为属性而不是链接,那么如何将此链接作为锚标记或将其链接到所需的链接? 即,如何用锚标记包装这些内容?
提前感谢您,感谢您的帮助。
这是我的剧本:
for (var i = 0; i < items.length; i++) {
var item = items[i];
// Get the title from the element. firstChild is the text node containing
// the title, and nodeValue returns the value of it.
var title = item.getElementsByTagName('title')[0].firstChild.nodeValue;
var pubDate = item.getElementsByTagName('pubDate')[0].firstChild.nodeValue;
var link =item.getElementsByTagName('link')[0].firstChild.nodeValue;//
//var link ='<a href="' + item.getElementsByTagName('link')[0].firstChild.nodeValue + '">';//
var table = document.createElement('table');
var tr = [];
var td1 = document.createElement('td');
var td2 = document.createElement('td');
var td3 = document.createElement('td');
var text1 = content.appendChild(document.createTextNode(title));
var text2 = content.appendChild(document.createTextNode(pubDate));
var text3 = content.appendChild(document.createTextNode(link));
for (var i2 = 1; i2 < 4; i2++) {
tr[i2] = document.createElement('tr');
for (var j = 1; j < 4; j++) {
td1.appendChild(text1);
td2.appendChild(text2);
td3.appendChild(text3);
tr[i2].appendChild(td1);
tr[i2].appendChild(td2);
tr[i2].appendChild(td3);
}//End of nested FOR
table.appendChild(tr[i2]);
} // end of Parent FOR
tablearea.appendChild(table);
答案 0 :(得分:0)
我想有更好的方法,例如使用div
而不是表格,但在这个问题的约束下,是否可以简单地拥有与锚点/链接相同的行为?如果是这样,也许您可以简单地将此代码添加到循环中。
使用Javascript:
tr[i2].className="link" //class for some UX hints
tr[i2].onclick=(function(link){
return function(e){
e.preventDefault();
location.href=link
}
})(link)
CSS:
tr.link {cursor:pointer}
tr.link:hover {background:#FF0}
这应允许用户点击该行的任意位置以关注链接