Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在GMail的GreaseMonkey脚本中使用jQuery_Jquery_Greasemonkey - Fatal编程技术网

在GMail的GreaseMonkey脚本中使用jQuery

在GMail的GreaseMonkey脚本中使用jQuery,jquery,greasemonkey,Jquery,Greasemonkey,我正在尝试编写一个Greasemonkey脚本来更改默认GMail UI上的颜色,使用jQuery选择我想要更改的元素。然而,我在工作/调试方面遇到了无尽的困难。当我最终更正我的“@requires”url时,我发现很难确定在数十亿个嵌套div的泥沼中,哪个div实际呈现了我想要更改的颜色。他们大多数只装饰了一个等级,.nH 我想更改收件箱上方的蓝色条 我不再看到任何错误,但是我的GM_日志调用似乎被忽略了,jQuery没有定义。我怀疑后一个问题是GreaseMonkey在我的用户脚本执行后卸载

我正在尝试编写一个Greasemonkey脚本来更改默认GMail UI上的颜色,使用jQuery选择我想要更改的元素。然而,我在工作/调试方面遇到了无尽的困难。当我最终更正我的“@requires”url时,我发现很难确定在数十亿个嵌套div的泥沼中,哪个div实际呈现了我想要更改的颜色。他们大多数只装饰了一个等级,.nH

我想更改收件箱上方的蓝色条


我不再看到任何错误,但是我的GM_日志调用似乎被忽略了,jQuery没有定义。我怀疑后一个问题是GreaseMonkey在我的用户脚本执行后卸载了jQuery。我离你很近吗?如果我可以在控制台窗口中测试选择器,那就太好了。

出于调试目的,您可以使用将jquery加载到页面中。这将允许您确定GM查询中所需的选择器。您还可以尝试使用一种简单的工具来制定规则来选择页面上的元素。

出于调试目的,您可以使用将jquery加载到页面中。这将允许您确定GM查询中所需的选择器。您还可以尝试一下,这是一个简单的工具,可以制定规则来选择页面上的元素。

完美的扩展,可以将jQuery嵌入到Chrome控制台中,就像您可以想象的那样简单。如果jQuery已经嵌入到页面中,则此扩展也会提示

此扩展用于将jQuery嵌入到所需的任何页面中。它允许在控制台外壳中使用jQuery(您可以通过“Ctrl+Shift+j”调用Chrome控制台)

要将jQuery嵌入所选选项卡,请单击扩展按钮

链接到分机:

将jQuery嵌入Chrome控制台的完美扩展,就像您想象的那样简单。如果jQuery已经嵌入到页面中,则此扩展也会提示

此扩展用于将jQuery嵌入到所需的任何页面中。它允许在控制台外壳中使用jQuery(您可以通过“Ctrl+Shift+j”调用Chrome控制台)

要将jQuery嵌入所选选项卡,请单击扩展按钮

链接到分机:

关于如何在Greasemonkey中使用jQuery:

// @require http://www.example.com/example.js
更多信息,请访问:


或者在Chrome中使用jQuery:

关于如何在Greasemonkey中使用jQuery:

// @require http://www.example.com/example.js
更多信息,请访问:


或者在Chrome中使用jQuery:

您能发布您的代码吗,这样我们就可以看到哪些可能不起作用了

此外,这里还有一个指向我的一个使用JQuery的脚本的链接,因此您可以查看源代码来检查如何执行此操作


PS:如果重新安装脚本,则会再次下载@require。我对它进行了测试。

你能发布你的代码吗,这样我们就可以看到什么可能不起作用了

此外,这里还有一个指向我的一个使用JQuery的脚本的链接,因此您可以查看源代码来检查如何执行此操作


PS:如果重新安装脚本,则会再次下载@require。我对它进行了测试。

如果您将以下内容复制并粘贴到Chrome中的javascript控制台中,您将看到加载jQuery并执行查询的示例。希望这会有所帮助,但老实说,谷歌的HTML/CSS是一个移动的目标,你所做的任何事情都可能最终变得不稳定

var scr = document.createElement('script');
scr.setAttribute('src','https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js');
document.getElementsByTagName('body')[0].appendChild(scr);

// wait for the script to load before doing this line
jQuery(document.getElementById('canvas_frame').contentDocument).find('.nU a.n0');

如果将以下内容复制并粘贴到Chrome中的javascript控制台中,您将看到加载jQuery并执行查询的示例。希望这会有所帮助,但老实说,谷歌的HTML/CSS是一个移动的目标,你所做的任何事情都可能最终变得不稳定

var scr = document.createElement('script');
scr.setAttribute('src','https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js');
document.getElementsByTagName('body')[0].appendChild(scr);

// wait for the script to load before doing this line
jQuery(document.getElementById('canvas_frame').contentDocument).find('.nU a.n0');

不幸的是,SelectorGadget在mail.google.com上似乎不起作用,但就算如此,Gmail完全是另一种动物。谢谢。事实上,我昨晚很晚才发现了jqueryify,但当我试图用$(“div.qm”)选择一个“div class='qm'”而没有得到任何回报时,我放弃了-(可能你没有得到标签是因为谷歌使用了iframe。因此,首先要得到iframe的内容窗口,然后是相应的标签。如果你使用Firefox+Firebug,你应该安装FireQuery(Firebug插件),其中包括jqueryfy(和其他很棒的功能)。不幸的是,SelectorGadget在mail.google.com上似乎不起作用,但我承认,Gmail完全是另一种动物。谢谢。我昨晚晚些时候发现了JQueryfy,但当我试图用$(“div.qm”)选择一个“div class='qm'”时,我放弃了,什么也没有得到-(可能你没有得到标签是因为谷歌使用了iframe。因此,首先要得到iframe的内容窗口,然后是相应的标签。如果你使用Firefox+Firebug,你应该安装FireQuery(一个Firebug插件),其中包括jqueryfy(和其他很棒的功能)。