2012-03-07 54 views
1

我试图在插入部分专门为Gmail撰写工具栏添加一个按钮。我见过一个扩展,就是这么做的,所以我知道它是可能的,但我对如何去做这件事感到困惑。如何注入Gmail组成iframe?

我使用content_Script将JavaScript注入到网页中,但撰写窗口位于iframe窗口中,显然你不允许注入,因为iframe在content_script之后加载了“run_at”:“ document_end”。

另外一件我感到困惑的事情是,Gmail的所有id标签都是随机的,所以如何知道每次撰写电子邮件时它们总是与众不同。

所以任何人都可以帮助我,让我知道如何去使用content_script注入iframe以及如何解决GMail id标签始终随机/不同。

{ 
     "name": "Test Gmail", 
     "version": "0", 
     "description": "Test Gmail", 

     "permissions": ["tabs", "http://*/*", "https://*/*"], 
     "content_scripts": [ 
     { 
      "matches": [ "http://*/*", "https://*/*"], 
      "css": ["mystyles.css"], 
      "js": ["myScript.js"], 
      "run_at": "document_end", 
      "all_frames": true 

     } 
     ] 
    } 
+0

你不能检查你找到的扩展的代码吗?你能提供一个链接吗? – Cilvic 2012-04-05 18:35:30

+0

另外我发现这个答案是不断轮询新的内置页框:http://stackoverflow.com/questions/9424550/how-can-i-detect-keyboard-events-in-gmail – Cilvic 2012-04-05 18:36:17

+0

Ops对不起,我已经明白了这一点感谢您的建议。但对于任何寻找答案的人来说。您必须使用“DOMNodeInserted”事件或类似的事件,您可以使用几个不同的事件。并使用JQuery注入到iframe中。 – user1255276 2012-04-10 15:27:47

回答

0

使用JQuery并侦听偶数“DOMNodeInserted”。之后,您想使用JQuery来定位您想要插入按钮的位置,或者使用函数$(selector,context);搜索父母。 GMail ID名称全部动态完成,因此您必须尝试搜索不会更改的内容,例如html标签或类名称。