jquery选择器无法在Gmail中运行

时间:2012-02-26 20:03:29

标签: javascript jquery google-chrome-extension gmail greasemonkey

我正在使用Jquery修改Google导航工具栏(黑色)。

此选择器适用于google.com和其他一些谷歌网站,如Google Plus(plus.google.com):

$("#gbzc").find("li.gbt")

(这会选择工具栏中的li项目)

但由于某种原因,在gmail中,这个选择器不起作用。该页面的结构在gmail.com和其他谷歌网站上看起来完全相同,但是当在gmail中运行时,此选择器不会返回任何内容。

有什么想法吗?

2 个答案:

答案 0 :(得分:4)

与其他google网页不同,Gmail的内容(包括工具栏)会加载到iframe中。

因此,当您使用顶级文档中的此代码时,您必须将iframe文档作为上下文传递( $() 的第二个参数)

答案 1 :(得分:2)

这是因为iframe。

如果您可以使用纯JavaScript,这是一个解决方法。 您可以使用javascript的document.querySelectorAll()功能,它可以选择您需要的任何内容。

它在gmail中运行良好。即使document.getElementsByClassName()也无效。