ev = ev||window.event;
key = ev.keyCode||ev.which;
if((ev.ctrlKey && key == 13) || key == 27) {
+ _hotkeys.alt = false;
ev.cancelBubble = true;
if(ev.stopPropagation) ev.stopPropagation();
// here ctrl-enter/escape support
document.onkeydown = function(ev) {
ev = ev||window.event;
key = ev.keyCode||ev.which;
- if (key == 18 && !ev.ctrlKey) { // start selection, skip Win AltGr
- _hotkeys.alt = true;
- _hotkeys.focus = -1;
- return stopEv(ev);
- } else
- if (key == 27) { // cancel selection
+
+ if (key == 27 && ev.altKey) { // cancel selection
_hotkeys.alt = false;
_hotkeys.focus = -1;
return stopEv(ev);
}
- else if (_hotkeys.alt && ((key>47 && key<58) || (key>64 && key<91))) {
+ else
+ if (ev.altKey && !ev.ctrlKey && ((key>47 && key<58) || (key>64 && key<91))) {
+ _hotkeys.alt = true;
var n = _hotkeys.focus;
var l = document.links;
var cnt = l.length;
_hotkeys.alt = false;
if (_hotkeys.focus>=0) {
var link = document.links[_hotkeys.focus];
- if (link.target=='_blank') {
-// window.open(link.href,'','toolbar=no,scrollbar=no,resizable=yes,menubar=no,width=900,height=500');
- openWindow(link.href,'_blank');
- } else
- window.location = link.href;
+ if(link.onclick)
+ link.onclick();
+ else
+ if (link.target=='_blank') {
+ window.open(link.href,'','toolbar=no,scrollbar=no,resizable=yes,menubar=no,width=900,height=500');
+ openWindow(link.href,'_blank');
+ } else
+ window.location = link.href;
}
- }
return stopEv(ev);
+ }
}
return true;
}