aboutsummaryrefslogtreecommitdiffstats
path: root/docs/src/templates/js/docs.js
diff options
context:
space:
mode:
Diffstat (limited to 'docs/src/templates/js/docs.js')
-rw-r--r--docs/src/templates/js/docs.js18
1 files changed, 13 insertions, 5 deletions
diff --git a/docs/src/templates/js/docs.js b/docs/src/templates/js/docs.js
index 15041774..587e1565 100644
--- a/docs/src/templates/js/docs.js
+++ b/docs/src/templates/js/docs.js
@@ -145,11 +145,19 @@ docsApp.directive.docsSearchInput = ['$document',function($document) {
var ESCAPE_KEY_KEYCODE = 27,
FORWARD_SLASH_KEYCODE = 191;
angular.element($document[0].body).bind('keydown', function(event) {
- var input = element[0];
- if(event.keyCode == FORWARD_SLASH_KEYCODE && document.activeElement != input) {
- event.stopPropagation();
- event.preventDefault();
- input.focus();
+ if(event.keyCode == FORWARD_SLASH_KEYCODE && document.activeElement) {
+ var activeElement = document.activeElement;
+ var activeTagName = activeElement.nodeName.toLowerCase();
+ var hasInputFocus = activeTagName == 'input' || activeTagName == 'select' ||
+ activeTagName == 'option' || activeTagName == 'textarea' ||
+ activeElement.hasAttribute('contenteditable');
+ if(!hasInputFocus) {
+ event.stopPropagation();
+ event.preventDefault();
+
+ var input = element[0];
+ input.focus();
+ }
}
});