function get_link_all()
{
var str_innerHTML,int_length_links,i;
int_lenth_links = document.links.length;
for ( i=0;i<= int_lenth_links;i++)
{
str_innerHTML += "<p>";
str_innerHTML += document.getElementsByTagName("a")[i].innerHTML;
str_innerHTML += ":   "
str_innerHTML += document.links[i];
str_innerHTML += "</p>";
str_innerHTML += "<br />";

}
document.write(str_innerHTML);
}

解决方案 »

  1.   

    <HTML><HEAD>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </HEAD> 
    <BODY>
    <a href="#">1</a>
    <a href="#">2</a>
    </BODY>
    <script>
    function get_link_all()

    var str_innerHTML,int_length_links,i;
    int_lenth_links = document.links.length;
    for ( i=0;i<= int_lenth_links;i++)
    {
    str_innerHTML += "<p>";
    str_innerHTML += document.getElementsByTagName("a")[i].innerHTML;
    str_innerHTML += ": "
    str_innerHTML += document.links[i];
    str_innerHTML += "</p>";
    str_innerHTML += "<br />";}
    document.write(str_innerHTML);
    }
    get_link_all();
    </script></HTML>能出结果啊也不报错~·
      

  2.   

    i< int_lenth_linksnot 
    i<= int_lenth_links
      

  3.   

    int_lenth_links = document.links.length;
    for ( i=0;i<= int_lenth_links;i++)int_lenth_links说的是链接节点的个数,从0排序应该最多排到int_lenth_links-1,不然就超过下标最大数了,会报错。填写一句:int_lenth_links--;
      

  4.   

    2、3楼是正确的。
    我是通过这段代码获取当前页面的所有链接和文本;用来准备自动化数据;
    不过出现新的问题,会有一些javascript:;链接给输出来,没有获取真正的链接;还得想办法过滤。。
      

  5.   

    int_lenth_links = document.links.length;
    这一句有问题,建议换掉;