内部脚本完全加载后如何运行脚本?

时间:2012-08-28 07:38:47

标签: javascript facebook greasemonkey facebook-chat

我试图隐藏Facebook边栏聊天列表中的特定人员。

我的第一次尝试是尝试替换聊天栏中用户的名称,但由于聊天栏单独加载,并且在页面本身加载后很长时间,因此简单.replace不起作用。< / p>

聊天加载后有没有办法运行Greasemonkey脚本?

我听说过有关unsafeWindow功能的一些内容,但我不确定我是否可以在此处申请,如果是,请如何申请。

unsafeWindow.hidePerson = function() {
    document.body.innerHTML = document.body.innerHTML.replace(/Firstname Lastname/g, '' );
}

unsafeWindow.hidePerson();

1 个答案:

答案 0 :(得分:1)

要回答有关“在内部脚本完全加载后运行脚本”的问题,请参阅this answer (问题场景与AJAX场景相同)。


然而 ,在您的案例中有几件事情:

  1. 您的问题“I'm trying to hide specific people in the Facebook sidebar chat list”已经被Facebook覆盖了!

    "Can I turn chat on for just a few friends?"
    按照那里的说明进行操作,您可以:

    • 仅隐藏您指定的人
    • 或者,只显示 您指定的人
    • 或者,完全关闭聊天功能
  2. 不要试图像这样设置innerHTML;你会破坏页面(事件监听器会被破坏等)。

  3. unsafeWindow此处不存在问题,不需要。

  4. 如果您指的是我未涵盖的内容,请参阅this pagethis pagethis page

    然后编辑您的问题(或询问新问题),并至少包含您想要影响的聊天部分的HTML片段以及相同的屏幕截图。