@@ -16,24 +16,21 @@ export class User {
1616 } )
1717 const items = [ ...document . querySelectorAll ( '.input' ) ]
1818 items . forEach ( button => {
19- button . addEventListener ( 'touchstart' , ( event ) => {
19+ const eventStart = event => {
2020 this . interval = setInterval ( ( ) => {
21- const [ , input ] = event . target . className . split ( ' ' )
22- this . eventsTrigger ( userKeys [ `${ input } Key` ] )
21+ const buttonName = event . target . className
22+ . split ( ' ' )
23+ . filter ( name => name !== 'input' ) [ 0 ]
24+ this . eventsTrigger ( userKeys [ `${ buttonName } Key` ] )
2325 } , 50 )
24- } )
25- button . addEventListener ( 'touchend' , _ => {
26+ }
27+ const eventEnd = _ => {
2628 clearInterval ( this . interval )
27- } )
28- button . addEventListener ( 'mousedown' , ( event ) => {
29- this . interval = setInterval ( ( ) => {
30- const [ , input ] = event . target . className . split ( ' ' )
31- this . eventsTrigger ( userKeys [ `${ input } Key` ] )
32- } , 50 )
33- } )
34- button . addEventListener ( 'mouseup' , _ => {
35- clearInterval ( this . interval )
36- } )
29+ }
30+ button . addEventListener ( 'touchstart' , eventStart )
31+ button . addEventListener ( 'touchend' , eventEnd )
32+ button . addEventListener ( 'mousedown' , eventStart )
33+ button . addEventListener ( 'mouseup' , eventEnd )
3734 } )
3835 document . querySelector ( 'body' ) . addEventListener ( 'touchend' , ( e ) => {
3936 e . preventDefault ( )
0 commit comments