• ベストアンサー

DOM内のfunctionを呼ぶ方法

タイトルの通りです。 ロード完了後、onkeydownで発火するボタンがあり、 呼出し先にfunctionを指定している様なのですが、 onkeydownを発火させる方法もしくは 読み込みページ内に既にあるfunctionを呼ぶ方法はありますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.3

> DOMとしてどの様に呼べば良いのでしょうか? 質問者さんの言っている DOM は Document Object Model の事では無いのでしょうか? DOMとして呼ぶという意味が分かりません。 > scriptタグ内にCreateElementしてでしょうか? エレメントを作っても何も起きません。 scriptタグ内で定義済の関数を直接呼べば済む事です。 onkeydownイベントで処理が行われているのであれば、onkeydownイベントにAppendされている関数をscriptタグ内でCallするだけです。 もしかして、onkeydownイベントにAppendされている関数名が不明なので、関数を直接Callするのではなくkeydown自体をJavaScriptで発生させたいという事でしょうか? その場合は <script>let k = new KeyboardEvent( "keydown", { keyCode: XX });</script> でkeydownを発生させられます。 KeyCodeには、どのキーを押したイベントを発生させたいのかに合わせて、そのキーのキーコードを設定します。

popepon
質問者

お礼

ご回答有難う御座います。 度々恐れ入ります。 恐らくですがお互い話している前提に相違がある様に感じます。 例えばの話ですが、XHRをresponseType = 'document' で取得し、 その取得先htmlのfunctionを呼び出すイメージに近いと思います。

popepon
質問者

補足

ごめんなさい、何か勘違いしてたのか document.ファンクション名 で普通に呼べました。 ご回答頂き有難う御座いました。

その他の回答 (2)

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.2

> 読み込まれた時に実行するfunctionを自分で作るのではなく > 既に用意されてるfunctionを呼び出せるかって事です。 > もしかして同名のfunctionをappendしたら呼べるって事でしょうか? 関数の定義は <script> function名() { 処理内容; } </script> です。 その関数を実行する方法は <script> function名(); </script> です。append ではなく call するのです。 ページ読み込みタイミングにしっかり合わせたいなら <script> window.onload = function() { function名(); } </script> です。

popepon
質問者

お礼

ご回答有難うございます。 自前でhtmlを生成してる訳ではないので DOMとしてどの様に呼べば良いのでしょうか? scriptタグ内にCreateElementしてでしょうか?

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.1

ページを読み込んだら自動的にfunctionを呼び出したいと言う事ですか? <script> function名(); </script> で実行できます。

popepon
質問者

お礼

ご回答有難うございます。 読み込まれた時に実行するfunctionを自分で作るのではなく 既に用意されてるfunctionを呼び出せるかって事です。 もしかして同名のfunctionをappendしたら呼べるって事でしょうか?

関連するQ&A