shiftで終わるonKeypressイベントで、番号の付いたキーの値を取得したいと考えています。私はキー123 ... 9と別のアクションをリンクするWebアプリケーションを作ろうとしています。またshift-123 ... 9。問題はシフトを使ってkeypressイベントを取得したときにシフト値が得られ、シフトがtrueの場合のみです。Shiftキーを押しながらキーを押すイベントで、番号付きキーの元のキーマップを取得するにはどうすればよいですか?
シフト-1
shiftKey: true
key: "!"
「!」から値1を取得する方法を見つけたいと思います。私は "!"以外の文字を持っているかもしれない他のキーボードについても心配しています。シフト-1が押されたとき。 AZERTYキーボードのように。
http://mentalfloss.com/article/52483/6-non-qwerty-keyboard-layouts
shiftキーが押されていないかのようにシフトキープッシュイベントの元の値を取得するにはどうすればよいですか?応答をコメントする
更新:
@HostListener('document:keypress', ['$event'])
handleKeyboardEvent(event: KeyboardEvent) {
let keyNumber = Number.parseInt(event.key);
if (keyNumber !== NaN && keyNumber !== 0) {
if (event.shiftKey === false && keyNumber <= this.documents.length) {
// use number to access some array
this.currentDocument = this.documents[--keyNumber];
} else if (keyNumber <= this.currentDocument.toc.length) { // I'll see if they go past 10..
// PROBLEM HERE trying to get number to also access an array
this.routeToFragment(this.currentDocument.toc[--keyNumber].slug); // this is NaN until I can convert "[email protected]#$%..("
}
}
}
は、あなたがしようとしているものをご提示ください。 *「ただシフト値を得ることができます」*は実際には意味がありません – charlietfl
今私のコードの例を今投稿しました – Jonathan002