我需要获取页面中的所有链接,并且我确实得到了它们,问题是href在网站中存在两次,为了没有获得链接两次我用变量做了一个小技巧:
getAlllinks: function()
{
var links = content.document.getElementsByTagName("a");
var entries = new Array;
var liens = new Array;
for(var i = 0; i<links.length; i++)
{
if(entries.indexOf(links[i].href) == -1)
{
entries.push(links[i].href);
liens.push(links[i]);
}
}
return links;
}
好到现在一切都很好,我把链接放在树(Xul)和所有,但我的问题从这里开始,我使用scrollIntoView
滚动到链接
var tree = document.getElementById("Tree_links");
var tbo = tree.boxObject;
var row = { }, col = { }, child = { };
tbo.getCellAt(event.clientX, event.clientY, row, col, child);
var cellText = tree.view.getCellText(row.value, col.value);
var links = new Array;
links = cleanLinks();
for (var i = 0; i < links.length; i++)
{
if (links[i].href === cellText.toString())
{
links[i].scrollIntoView("true");
if(links[i].style.backgroundColor == "rgb(255, 255, 0)")
{
links[i].style.backgroundColor='transparent';
}
else
{
links[i].style.backgroundColor='#ffff00';
}
}
}
它不会滚动页面中两次的链接,但如果我将所有链接(两次或单个)放在树中它会滚动。
提前感谢。
答案 0 :(得分:0)
好吧,我明白了, 我正在处理填充树时所做的变量的技巧