【发布时间】:2012-11-14 19:26:28
【问题描述】:
我正在尝试在 Firefox 中使用 Greasemonkey 编写我的第一个用户脚本。我做了很多研究,因为我是用户脚本和 jQuery 的新手,但我似乎无法让这个简单的测试脚本工作。到目前为止,我在Test.user.js 文件中有这个:
// ==UserScript
// @name Desk Notifications
// @description Displays special notifications to NVOWS coaches at desk.com
// @downloadURL http://www.example.com/deskNotifications.user.js
// @include http://nvows.desk.com/agent
// @namespace http://www.example.com/userscripts
// @updateURL http://www.example.com/deskNotifications.meta.js
// @version 0.1
// @grant none
// ==/UserScript
$(document).ready(function(){
alert('Script loaded.');
$('.interaction_type_60').click(function() {
alert("You clicked a case!");
});
$('.interaction_type_40').click(function() {
alert("You clicked a case!");
});
});
我需要它做的显然要复杂得多,但因为我是 jQuery 和用户脚本的新手,所以我只想先完成这项工作。至此“脚本已加载”。正在显示,以便排除许多可能的问题。当我在 firebug 中只运行这部分代码时,它工作正常:
$(document).ready(function(){
alert('Script loaded.');
$('.interaction_type_60').click(function() {
alert("You clicked a case!");
});
$('.interaction_type_40').click(function() {
alert("You clicked a case!");
});
});
这样就排除了代码错误或抓取错误的类选择器。如果代码正确并且正在执行,我看不出可能是什么问题。如果有人可以提供帮助,将不胜感激。我不是编程新手。只是基于网络的东西。
这是我试图在点击它时看到的 HTML 页面的一部分。
<tbody id="ticket_filter_list_items" class=" ">
<tr id="ticket_filter_item_73354627" class="ticket_filter_item ticket_filter_item_table_view interaction_type_60 ticket_filter_item_open ticket_filter_item_current_selected" onclick=" ticketEditTableView(73354627, event);return false; " data-in-search="" data-ticket-id="73354627" style="">
<tr id="ticket_filter_item_73382205" class="ticket_filter_item ticket_filter_item_table_view interaction_type_40 ticket_filter_item_open " onclick=" ticketEditTableView(73382205, event);return false; " data-in-search="" data-ticket-id="73382205" style="">
</tbody>
这是题外话,没什么大不了的,但如果你看到一些东西会使这个用户脚本在不是“http://nvows.desk.com/agent”的页面上执行'然后告诉我。它说“脚本已加载”。每次我去堆栈溢出。哈。
---------------------------------- ---
更新: 我只是尝试这样做以进行测试:
$(document)
.on('click', this, function(){
alert('Please Work!!!!');
})
我一直试图点击的东西是没有显示消息的东西。页面加载后,所有这些都加载了javascript。我几乎是肯定的,这就是他们不允许我点击它们的原因。有没有办法点击这些项目。在 HTML 脚本中,它们看起来与其他元素相同。
【问题讨论】:
-
您可以在问题中添加标记吗?
-
@iMoses 我不确定你的意思是什么?再一次,我是网络新手。我不确定你在说什么标记。
-
他要求查看您的代码的 HTML 部分
-
@mplungjan 我可以试试。但是为什么我让它在 firebug 中运行而不是在实际脚本中运行呢?
-
@DawsonLoudon 哦。我应该考虑到这一点。我没有任何 HTML。我正在制作一个使用网站 desk.com 的用户脚本。我猜你看不到,虽然没有帐户。这是一大堆代码,所以我将编辑原始帖子以包含我想要影响的部分。
标签: javascript jquery greasemonkey