commit 18770d4b0d70c87cf199375d63148f5e45acba26
| author | 斟酌 鵬兄 <tgckpg@gmail.com> |
| date | 2015-12-22T14:54:39Z |
| subject | Clicking yes / no did not remove key event properly |
commit 18770d4b0d70c87cf199375d63148f5e45acba26
Author: 斟酌 鵬兄 <tgckpg@gmail.com>
Date: 2015-12-22T14:54:39Z
Clicking yes / no did not remove key event properly
---
botanjs/src/Components/MessageBox.js | 44 ++++++++++++++++++------------------
1 file changed, 22 insertions(+), 22 deletions(-)
diff --git a/botanjs/src/Components/MessageBox.js b/botanjs/src/Components/MessageBox.js
index c3a30a9..8210c0a 100644
--- a/botanjs/src/Components/MessageBox.js
+++ b/botanjs/src/Components/MessageBox.js
@@ -23,9 +23,30 @@
, Dand.wrap( "span", null, "comp flsf", yes || "OK" )
);
+ var keyBinding = new EventKey(
+ "KeyDown", function ( e )
+ {
+ e = e || window.event;
+ if ( e.keyCode ) code = e.keyCode;
+ else if ( e.which ) code = e.which;
+
+ if ( no && code == 27 )
+ {
+ _no.click();
+ }
+ else if( code == 13 && ( e.ctrlKey || e.altKey ) )
+ {
+ _yes.click();
+ }
+ }
+ );
+
+ doc.addEventListener( keyBinding );
+
// left right button
_yes.onclick = function()
{
+ doc.removeEventListener( keyBinding );
// if handler is set
if( _self.clickHandler ) _self.clickHandler( true );
document.body.removeChild( _self.stage );
@@ -42,34 +63,13 @@
_no.onclick = function()
{
+ doc.removeEventListener( keyBinding );
if( _self.clickHandler ) _self.clickHandler( false );
document.body.removeChild( _self.stage );
_self.stage = null;
};
}
- var keyBinding = new EventKey(
- "KeyDown", function ( e )
- {
- e = e || window.event;
- if ( e.keyCode ) code = e.keyCode;
- else if ( e.which ) code = e.which;
-
- if ( no && code == 27 )
- {
- _no.click();
- doc.removeEventListener( keyBinding );
- }
- else if( code == 13 && ( e.ctrlKey || e.altKey ) )
- {
- _yes.click();
- doc.removeEventListener( keyBinding );
- }
- }
- );
-
- doc.addEventListener( keyBinding );
-
// set handler
if ( handler ) this.clickHandler = handler;