如何读取ajax对话框的信息

时间:2011-10-05 14:17:31

标签: javascript facebook jquery firefox-addon

我想使用javascript& jQuery开发一个firefox-extension,它提取用户的facebook-privacy设置。 在“隐私设置”菜单中,您可以单击“编辑设置”,我想阅读用户输入的设置。

这是一张图片:

screenshot

我有3个解决方案的想法:

第一个想法:我在我的脚本中寻找一种方法来“伪造”点击链接。但是我还没有找到一个函数......我试过.click()和.trigger('click')但是这不起作用......对此有何想法?

第二个想法:如果没有办法“伪造”那次点击,我试图用window.location.href =“http://www.facebook.com/ajax/settings/privacy/connect.php”打开该链接;但这只是引导我进入facebook-startpage。

最后一个想法:用ajax发出请求。我使用FireBug来获取参数。在我的内容脚本中,我使用了jQuery:

var data = '__a=1&__d=1&__user=100002895945078';

$.ajax({
    type:"GET",
    url:"http://www.facebook.com/ajax/settings/privacy/connect.php",
    data: data,
    success: function(response) {
        alert(response);
    },
    error: function(xhr) {
        alert('Error!  Status = ' + xhr.status);
    }
});

我使用了FireBug,发现请求与我点击“编辑设置”链接相同。甚至响应都是一样的(你可以在这里看到它:http://pastie.org/private/gk7fnfkretolkqd8xlmqhw) 我需要的信息包含在本回复中,但我不知道该怎么做。

我从错误警报中获取:"Error! Status = 200",但通常200可以!? 对话框没有弹出,并且未添加DOM节点。 我自己必须这样做吗?

1 个答案:

答案 0 :(得分:0)

我明白了。问题是我忘了将DataType设置为文本。