TextArea istifadə edərkən klaviatura hadisələrinin söndürülməsi

Veb saytım klaviaturada düymələri basaraq naviqasiya üçün nəzərdə tutulub: enter, \, +, -, və s... Mənim problemim budur ki, məndə textArea var və mən bu düymələri basanda textArea seçilibsə, yazmaq və düymələr eyni vaxtda işləyir.

Düşündüm ki, bu məsələyə yanaşmağın ən yaxşı yolu bir növ booleandan istifadə etməkdir. Mən if(!x.hasFocus()){ allow buttons to be used} istifadə etməyə çalışdım, lakin bu mantiq yalnız bütün sənədə aiddir, konkret textArealara deyil.

Beləliklə, mən yalnız mətnArea hazırda istifadəçi tərəfindən daxil olduqda, klaviatura təzyiqləri üçün hadisə dinləyicilərini necə söndürə bilərəm?

Mən istəyirəm ki, istifadəçi textArea-dan istifadə edərkən enter, \, +, - istifadə edə bilsin, lakin textArea istifadə edilmədikdə, bu düymələr müəyyən funksiyaları yerinə yetirməlidir, mən addEventListener("keyup", function(){...});


person joe55460    schedule 19.07.2017    source mənbə
comment
Siz event.stopPropagation(). İstifadə elədir ki, hadisə onun üzərində köpürməyi dayandıraraq textArea elementinə çatsın.   -  person Joao Delgado    schedule 19.07.2017
comment
Document.activeElement.tagNames === TEXTAREA yoxlanarkən if ifadələrindən istifadə edə biləcəyimi başa düşdüm   -  person joe55460    schedule 19.07.2017