質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

844閲覧

Javascriptでキーを実際に押す方法

pgnoobdesu

総合スコア35

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/02/11 11:02

以下のサイトを見て、Javascriptでキーを送信してみたのですが、動作しません。
https://ameblo.jp/personwritep/entry-12456996738.html

色々と調べてみると、JavascriptではKeydownやKeypressなどの「イベント」自体は発生させることができるものの、
実際にユーザがキーを押したように動作させるのは不可能との情報をどこかで見ました。
ですが、情報が古かったり、やっぱり動くようなことも書いてある情報を見つけたりで何が正しいのかわかりません。
実際にできることなのか教えてください。

イメージとしては、textarea上で例えば方向キーの上を押したら「A」のキーを押させるというプログラムが書きたいです。
textareaのvalue値を書き換えるのではなく、実際にユーザがAキーを押したかのように動作させたいんです。
何でこんなことをしたいのかというと、あるサイトのショートカットキーが使いにくくてアレンジしたいので、
自分の好きなキーを押したときに、本来のショートカットキーを送信するプログラムを書きたいからです。

文章ばかりで申し訳ございませんが、わかる方ご回答よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pgnoobdesu

2020/02/11 13:01

実際にサイト見て、キーを送信してみたけど動作しなかったって書いてるの読めないんですね。 ここに質問したのもネットのどの情報が正しいのか分からないから教えてほしいとも書いてるのに。 読解力ゼロ、文章を最初から最後まで読めない人が何で回答者やってるんですか。 二度と来ないでください。
AkitoshiManabe

2020/02/11 13:34

> キーを送信してみたけど動作しなかった 事実ベースで言うなら「環境を同じくして試した」という詳細は質問には書いてませんでした。 「ブラウザで試しただけなら動かなくて当然」と誤解されて仕方ない内容だったことも事実です。 情報が金になる時代に広告禁止ルールがあるため、回答者は慈善事業になっているのも事実です。 こうした事実の前に、露わにして良い感情と納めたほうがよい感情はあると思います。
m.ts10806

2020/02/11 20:07 編集

参考サイトのURLだけ提示されてもそれはあくまで参考サイトであってご自身が試したことではないですよ。 見てる人が赤の他人ということは理解されてるのでしょうか。 ひとまず、しばらく回答者やってみてからそういうこと言ってください。 「やってみた」と書いてるだけでそのコードを提示しない質問をまともに読む人がどれだけいるか考えてみると良いです。
guest

回答1

0

ベストアンサー

Javascriptでキーを実際に押す方法

JavaScript では不可能です。

ご質問の冒頭にあるリンク先で、本文やコードから以下の要点が読めたはずです。

  1. ブラウザ拡張の前身であるユーザスクリプトを利用できる環境を整えた条件下であること。
  2. ユーザスクリプト上で キー・イベントに対して、特定のDOM操作するリスナを割り当てるコードスニペットの備忘録。

KeyboardEventや関連するAPIを熟読してください。

JavaScript実行環境で定められた実装を、JavaScriptで変えることはできません。

投稿2020/02/11 11:56

AkitoshiManabe

総合スコア5432

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pgnoobdesu

2020/02/11 13:02

どっかの読解力ゼロの回答者とは違って、素晴らしい回答ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問