Wyłącz Testowane Firefox
Powinno to pomóc Ci zacząć. Być może trzeba będzie dodać puste skróty do ctrl+u
i ctrl+i
, aby wyłączyć je w innych przeglądarkach, ale ten kod został przetestowany w celu wyłączenia akcji w Firefoksie. Wystarczy uruchomić po inicjalizacji TinyMCE wyczerpał (testowałem kopalni w Firebug):
for(var i in tinyMCE.editors){
var editor = tinyMCE.editors[i];
for(var s in editor.shortcuts){
var shortcut = editor.shortcuts[s];
// Remove all shortcuts except Bold (66), Redo (89), Undo (90)
if(!(s == "ctrl,,,66" || s == "ctrl,,,89" || s == "ctrl,,,90")){
// This completely removes the shortcuts
delete editor.shortcuts[s];
// You could use this instead, which just disables it, but still keeps
// browser functionality (like CMD+U = show source in FF Mac) from interrupting the flow
// shortcut.func = function(){ };
}
}
}
tła
Wydaje się być zdefiniowane wokół linii 2294
z jscripts/tiny_mce/classes/Editor.js
(z pełnego pobrania rozwoju).
Ponadto są one przechowywane w tablicy w zmiennej Editor.shortcuts
. Klawisze są konfigurowane za pomocą specjalnych znaków, a następnie kodu klucza: ctrl,,,90
.
Ale z tego, co mogę powiedzieć, to wydaje się, że wiele przeglądarka realizować własne wersje ctrl+b
, ctrl+i
i ctrl+u
i że tylko przeglądarek Gecko nie:
// Add default shortcuts for gecko
if (isGecko) {
t.addShortcut('ctrl+b', t.getLang('bold_desc'), 'Bold');
t.addShortcut('ctrl+i', t.getLang('italic_desc'), 'Italic');
t.addShortcut('ctrl+u', t.getLang('underline_desc'), 'Underline');
}
Ale jeśli rozejrzeć się tam, widzę, jak to umożliwiają.
Zobacz także metodę Editor.addShortcut
. Możesz być w stanie zastąpić domyślne zachowanie.
zaktualizowałem moją odpowiedź na to próbki, w jaki sposób wyłączyć skróty nie chciałeś. –
Cóż, ta odpowiedź nie pozostawia nic do życzenia. :) Wycofuję moje. +1 –
@Pekka dobrze, dziękuję :) Początkowo myślałem, że źródło musi być edytowane, ale ich system skrótów jest całkiem niezły. –