Моя компания использует Confluence для своей внутренней вики, и это нормально, за исключением того, что у редактора есть несколько сочетаний клавиш, которые приводят меня к стене.В частности, он использует ^ K для «вставки ссылки», когда я хочу, чтобы он соблюдал системное поведение по умолчанию «kill line».
Я отследил соответствующий код, который вставляет прослушиватель:
$("#markupTextarea").select(function () {
AJS.Editor.storeTextareaBits(true);
}).keyup(function (e) {
AJS.Editor.contentChangeHandler();
if (e.ctrlKey) {
if (e.keyCode == 75) {// bind ctrl+k to insert link
return openLinkPopup(e);
}
if (e.keyCode == 77) {// bind ctrl+m to insert image
$("#editor-insert-image").click();
return false;
}
}
}).keydown(function (e) {
// prevent firefox's default behaviour
if (e.ctrlKey && e.keyCode == 75) {
return AJS.stopEvent(e);
}
}).change(function () {
AJS.Editor.contentChangeHandler();
});
Для контекста кажется, что они используют настроенную версию TinyMCE.В идеале мне бы хотелось, чтобы пользовательский сценарий для Chrome уничтожал этих слушателей событий, но я даже не могу заставить их уйти, сделав что-то с ними в консоли Chrome JS.
То, что я пробовал (главным образом по предложению других людей; я не совсем звездный хакер JS):
$('markupTextarea').unbind('select')
- говорит Object #<HTMLTextAreaElement> has no method 'unbind'
$('markupTextarea').removeEventListener
- не работает, так как я неУ меня нет имени, чтобы ссылаться на этих слушателей по
У меня почти нет идей.