javascript - Facebook 的 CSS 类名称的 "-cx-PRIVATE-"前缀是否受到 Greasemonkey 类型用户脚本的保护?

标签 javascript css facebook greasemonkey userscripts

Facebook 已开始使用“-cx-PRIVATE-”作为其网站上许多 CSS 类名称的命名前缀。

这似乎是对 Greasemonkey 类型用户脚本的某种保护。

当在 facebook 网页上查询以“-cx-PRIVATE-”开头的类名时,Facebook 是否可以拦截对 document.getElementsByClassName 的调用并禁止该函数返回任何结果?或者另一种可能性是他们可以在拦截查询时更改类名,然后在查询完成后再次将其更改回来

我问这个的原因是在某些情况下,即使我可以在源代码中看到类名以“-cx-PRIVATE-”开头的元素,但是当我尝试通过 javascript 从用户脚本,document.getElementsByClassName 函数未返回任何元素。

有没有人知道他们是如何做到这一点的以及解决他们的问题的任何方法?

最佳答案

是的,覆盖内置函数是很有可能的。以下是 document.getElementsByClassName 的示例:

// Cache the original
document.______getElementsByClassName = document.getElementsByClassName;
// Overide the function
document.getElementsByClassName = function(classes){

http://jsfiddle.net/nmiddleweek/fj52f7f8/5/

也许您可以尝试使用其他 DOM 查询函数进行搜索?

但是我没有解决方法。

尼克

关于javascript - Facebook 的 CSS 类名称的 "-cx-PRIVATE-"前缀是否受到 Greasemonkey 类型用户脚本的保护?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15588011/

相关文章:

ios - 链接器命令失败 Facebook Sdk

javascript - 如何搜索所有级别嵌套的 Javascript 对象

javascript - 是否可以在网络套接字中建立房间的概念?

javascript - 探索 Rally 对象模型的最简单方法是什么?

javascript - 响应式 CSS/java 脚本 DIV - 仅在移动查询上点击时显示

html - 表格宽度 100% 偏移一个像素(取决于实际宽度)

javascript - 在 JavaScript SDK 中构建的 Facebook 应用程序未发布到时间轴

JavaScript 检查未定义的语义

html - 最小化页面时如何使我的网页响应

facebook - 在 Facebook 受众群体中创建已保存的目标群体