用户脚本隐藏跨域iframe的子节点

我想用(Tampermonkey)用户脚本隐藏一些内容的评论。 作为一个例子,我试图应用一个脚本

// ==UserScript== // @name Hide CNN // @match http://www.cnn.com/* // @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js // @grant GM_addStyle // @run-at document-end // ==/UserScript== $('div.post-body:contains("Abbas")').hide() 

到页面http://www.cnn.com/2014/07/08/world/meast/mideast-tensions/index.html?hpt=hp_t1与以下代码的post

 
...

Abbas is nothing but puppet dog of Western savages and Nazis who want to enslave entire world.

...

但剧本似乎没有做任何事情。 我究竟做错了什么? 是否有可能使用用户脚本过滤网页的动态加载部分?

UPD:问题是评论是从另一个域加载到iframe中的。 如何使用Tampermonkey隐藏此类iframe的子节点? 我是否需要以某种方式使用GM_xmlhttpRequest

Disqus-动力评论通常在

此外,这些评论是AJAX驱动的。 所以你必须使用AJAX精明的技术 。

像这样的脚本应该工作(选择器可能需要调整):

 // ==UserScript== // @name Hide select CNN comments // @match http://disqus.com/embed/comments/* // @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js // @require https://gist.github.com/raw/2625891/waitForKeyElements.js // @grant GM_addStyle // ==/UserScript== /*- The @grant directive is needed to work around a design change introduced in GM 1.0. It restores the sandbox. */ //--- Only run on comments for CNN pages if (/&f=cnn&/i.test (location.search) ) { waitForKeyElements ('li.post:contains("Abbas")', hideComment); } function hideComment (jNode) { jNode.hide (); }