diff options
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/demos/keyhandler.html')
-rw-r--r-- | contexts/data/lib/closure-library/closure/goog/demos/keyhandler.html | 119 |
1 files changed, 0 insertions, 119 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/demos/keyhandler.html b/contexts/data/lib/closure-library/closure/goog/demos/keyhandler.html deleted file mode 100644 index 004bb9e..0000000 --- a/contexts/data/lib/closure-library/closure/goog/demos/keyhandler.html +++ /dev/null @@ -1,119 +0,0 @@ -<!DOCTYPE html> -<html> -<!-- -Copyright 2010 The Closure Library Authors. All Rights Reserved. - -Use of this source code is governed by the Apache License, Version 2.0. -See the COPYING file for details. ---> -<head> -<title>goog.events.KeyHandler</title> -<link rel="stylesheet" href="css/demo.css"> -<style> - -.input-group { - border: 1px solid black; - clear: both; - float: left; - margin-bottom: 1em; - padding: 1em; -} - -#console { - position: fixed; - right: 0; - top: 0; - left: 400px; - bottom: 0; - overflow: auto; -} - -#no-tab { - background: pink; -} - -</style> -<script src="../base.js"></script> -<script> - -goog.require('goog.debug.DivConsole'); -goog.require('goog.events'); -goog.require('goog.events.KeyCodes'); -goog.require('goog.events.KeyHandler'); - -</script> -</head> -<body> -<h1>goog.events.KeyHandler</h1> -<p><button onclick="divConsole.clear()">Clear Console</button></p> - -<div class="input-group"> - <label>Plain input <input></label><br> - <label>Number input <input class="number-input"></label><br> - <label>Text area <textarea></textarea></label><br> - <div tabIndex="0">Focusable div</div> -</div> - -<div id="no-tab" class="input-group"> - No Tab inside this<br><br> - - <label>Plain input <input></label><br> - <label>Number input <input class="number-input"></label><br> - <label>Text area <textarea></textarea></label><br> - <div tabIndex="0">Focusable div</div> -</div> - -<div id="console"></div> - -<script> - -var divConsole = new goog.debug.DivConsole(document.getElementById('console')); -divConsole.setCapturing(true); -var logger = new goog.debug.Logger.getLogger('demo'); - -var docKh = new goog.events.KeyHandler(document); -goog.events.listen(docKh, 'key', function(e) { - logger.info('keyCode: ' + e.keyCode + - ', charCode: ' + e.charCode + - ', repeat: ' + e.repeat + - ', target: ' + e.target + - ', native event: ' + e.getBrowserEvent().type); -}); - -var noTabKh = new goog.events.KeyHandler(document.getElementById('no-tab')); -goog.events.listen(noTabKh, goog.events.KeyHandler.EventType.KEY, function(e) { - if (e.keyCode == goog.events.KeyCodes.TAB) { - e.preventDefault(); - } -}); - -function numberInputKeyHandler(e) { - logger.info('isTextModifyingKeyEvent: ' + - goog.events.KeyCodes.isTextModifyingKeyEvent(e)); - if (e.target.className != 'number-input' || - e.ctrlKey || - !e.shiftKey && e.keyCode >= goog.events.KeyCodes.ZERO && - e.keyCode <= goog.events.KeyCodes.NINE || - !goog.events.KeyCodes.isTextModifyingKeyEvent(e)) { - return; - } - - switch (e.keyCode) { - // Allow these - case goog.events.KeyCodes.DELETE: - case goog.events.KeyCodes.BACKSPACE: - case goog.events.KeyCodes.TAB: - return; - } - - // prevent default for the rest - e.preventDefault(); -} - -goog.events.listen(docKh, goog.events.KeyHandler.EventType.KEY, - numberInputKeyHandler); - -</script> - -</body> -</html> |