Facebook已开始使用“-cx-PRIVATE-”作为其网站上许多CSS类名的命名前缀。对于其CSS类名称,Facebook的“-cx-PRIVATE-”前缀是否受Greasemonkey类型userscripts保护?
它似乎是对Greasemonkey类型用户脚本的某种保护。
当Facebook网页上的一个以“-cx-PRIVATE-”开头的类名查询被禁止时,Facebook可能会拦截对document.getElementsByClassName的调用,并禁止函数返回任何结果?或者另一种可能性是他们可以在查询被拦截时更改类名,然后在查询完成后再将其更改回
我问这个问题的原因是在某些情况下,即使我可以在源代码中看到代码中有类名以“-cx-PRIVATE-”开头的元素,但是当我尝试从userscript中通过javascript选择它们时,document.getElementsByClassName函数没有返回任何元素。
有没有人有任何想法,他们如何做到这一点和任何方式来解决他们的块?
我没有看到任何带有类名的页面。请链接到一个或至少保存一个来源。无可否认,这不会停止Greasemonkey脚本。 – 2013-03-24 01:58:53
它似乎可能是一个跨浏览器问题。看起来如果我在chrome中查看源代码,我看到cx-PRIVATE类,但是如果我在Firefox中查看源代码,我没有看到它们。很奇怪。 一个例子是在人字形的底层代码中,打开“隐藏故事/报告为垃圾邮件”菜单,当您将鼠标悬停在新闻源中的故事上时将出现该菜单。 – user280109 2013-03-26 23:20:17