0

在 facebook pokes 页面中,即http://www.facebook.com/pokes我正在尝试使用 javascript 查找所有 uid。从萤火虫我得到以下标签名称......

<a rel="async-post" ajaxify="/ajax/pokes/poke_inline.php?uid=XXXXXXXXXXXX&amp;pokeback=1" href="#" class="uiIconText"><i style="top: 0px;" class="img sp_1lbo22 sx_3b5b96"></i>Poke Back</a>

在此处输入图像描述

为了获得所有的uid,我以以下方式设计了我的javascript-

var allAnchorElements = document.getElementsByTagName('a');

for (var i = 0; i < allAnchorElements.length; i++) {
   var uid = allAnchorElements[i].ajaxify.match(/uid=([0-9]*)/)[1];

我没有把完整的代码放在这里。现在从萤火控制台执行此代码时,我收到TypeError: allAnchorElements[i].ajaxify is undefined错误消息。

为什么我收到此错误?如何更改脚本以获取所有 uid?

4

1 回答 1

4

那么 document.getElementsByTagName('a'); 正在获取页面上的所有链接。所有链接都具有该属性吗?如果答案是否定的,则将它们过滤掉。

单程:

var allAnchorElements = document.getElementsByTagName('a');
for (var i = 0; i < allAnchorElements.length; i++) {
    var ajaxify = allAnchorElements[i].ajaxify;
    if (!ajaxify) {
        continue;
    }
    var uid = ajaxify.match(/uid=([0-9]*)/)[1];
}

另一种方法是使用 querySelector 来获取元素。

于 2012-10-12T20:48:10.937 回答