xet*_*a11 11 javascript jira tampermonkey
我有一个tampermonkey脚本,它根据文本的颜色为JIRA评论着色.着色确实按预期工作.但是JIRA问题的所有按键事件都被停用了.
在脚本之前,我可以按下.以激活操作菜单或按m添加注释等.
脚本后没有任何作用.
信息:当我在Chrome的Snippet Windows中运行脚本时,一切都很好 - 所有快捷方式仍然有效并且着色已经发生.这让我假设Tampermonkey在JIRA中覆盖或取消绑定键事件.
有人知道如何避免这种情况吗?
脚本
// ==UserScript==
// @name JiraCommentColors
// @namespace com.company.tamperscripts
// @version 0.2
// @description colorize comments in JIRA made by awesome xetra11
// @author xetra11
// @match https://jira.company.com/browse/*
// @grant none
// @require http://code.jquery.com/jquery-1.12.4.min.js
// ==/UserScript==
(function() {
var opacity = '0.3';
var borderStyle = '1px solid black';
var commentSelector = "div[id*='comment']";
var zwischenstandSelector = 'a[name=Zwischenstand]';
var fragenSelector = 'a[name=Frage]';
var wartenSelector = 'a[name=Warten]';
var colorZwischenstand = 'rgba(0, 102, 0, '+ opacity +')';
var colorFrage = 'rgba(0, 153, 204, '+ opacity +')';
var colorWarten = 'rgba(255, 102, 0, '+ opacity +')';
var paintZwischenstand = function(index, element){
$(element).closest(commentSelector)
.css('background-color', colorZwischenstand)
.css('border', borderStyle);
};
var paintFrage = function(index, element){
$(element).closest(commentSelector)
.css('background-color', colorFrage)
.css('border', borderStyle);
};
var paintWarten = function(index, element){
$(element).closest(commentSelector)
.css('background-color', colorWarten)
.css('border', borderStyle);
};
$(zwischenstandSelector).each(paintZwischenstand);
$(fragenSelector).each(paintFrage);
$(wartenSelector).each(paintWarten);
})();
Run Code Online (Sandbox Code Playgroud)
可能的原因可能是因为您没有指定@run-atto document-end。尝试下面的代码
// ==UserScript==
// @name JiraCommentColors
// @namespace com.company.tamperscripts
// @version 0.2
// @description colorize comments in JIRA made by awesome xetra11
// @author xetra11
// @match https://jira.company.com/browse/*
// @grant none
// @run-at document-end
// @require http://code.jquery.com/jquery-1.12.4.min.js
// ==/UserScript==
(function() {
var opacity = '0.3';
var borderStyle = '1px solid black';
var commentSelector = "div[id*='comment']";
var zwischenstandSelector = 'a[name=Zwischenstand]';
var fragenSelector = 'a[name=Frage]';
var wartenSelector = 'a[name=Warten]';
var colorZwischenstand = 'rgba(0, 102, 0, '+ opacity +')';
var colorFrage = 'rgba(0, 153, 204, '+ opacity +')';
var colorWarten = 'rgba(255, 102, 0, '+ opacity +')';
var paintZwischenstand = function(index, element){
$(element).closest(commentSelector)
.css('background-color', colorZwischenstand)
.css('border', borderStyle);
};
var paintFrage = function(index, element){
$(element).closest(commentSelector)
.css('background-color', colorFrage)
.css('border', borderStyle);
};
var paintWarten = function(index, element){
$(element).closest(commentSelector)
.css('background-color', colorWarten)
.css('border', borderStyle);
};
$(zwischenstandSelector).each(paintZwischenstand);
$(fragenSelector).each(paintFrage);
$(wartenSelector).each(paintWarten);
})();
Run Code Online (Sandbox Code Playgroud)