如何查看Gmail的文本框?

时间:2012-10-01 10:40:41

标签: javascript jquery gmail greasemonkey

我正在研究gase的Greasemonkey脚本,我需要找到一种方法来引用gmail的文本框(当你撰写和回复电子邮件时)。 Gmail有一个带有新HTML的iframe,文本在正文中,作为WYSIWYG编辑器的一部分。我尝试用jquery选择那些元素的所有类,但它们不起作用 - 特别是.keypress()

以下是我的尝试:

$(".editable LW-avf").keypress(function(event) {
... // the wysiwyg body
});

$(".Am Al editable").keypress(function(event) {
... // the iframe
});

有没有办法绑定一个按键事件处理程序?或者甚至可以,因为gmail不是传统的文本框?

2 个答案:

答案 0 :(得分:1)

它并不漂亮,但它能完成这项工作:

document
    .querySelector(".editable")
    .contentDocument
    .querySelector(".editable")
    .onkeypress = function() { alert("jayer!"); };

答案 1 :(得分:1)

(".editable LW-avf")会选择 <body class="editable LW-avf">

它会选择以下内容:

<div class="editable">
    <LW-avf></LW-avf>
</div>

如果存在的话。

你想:

$("body.editable.LW-avf")

(两个类,选择器中的两个点。)

此外:

  1. 确保脚本设置为在iframe上运行(默认情况下)。
  2. 您希望使用keydown,而不是keypress