teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

質問の変更にあわせて追記

2019/05/23 07:19

投稿

Lhankor_Mhy
Lhankor_Mhy

スコア37468

answer CHANGED
@@ -24,4 +24,23 @@
24
24
  </script>
25
25
  ```
26
26
 
27
- しかし、これは関数定義と実行のタイミングの問題であって、「要素がきちんと読み込まれてから」という話とは関係ありません。
27
+ しかし、これは関数定義と実行のタイミングの問題であって、「要素がきちんと読み込まれてから」という話とは関係ありません。
28
+
29
+ ##### 質問の変更にあわせて追記
30
+ > functionName()は何処に置いてもonclickで実行されますが、画面表示から速攻でonclickすると処理できないケースなどあるのでしょうか?
31
+
32
+ 上記のとおり、ありえます。
33
+ さらに言えば、イベントとかDOMとか、その辺のわずらわしい話を取っ払って、↓このように書いてもエラーになります。
34
+ ```html
35
+ <script>
36
+ functionName();
37
+ </script>
38
+ <script>
39
+ function functionName(){
40
+ alert('hoge');
41
+ }
42
+ </script>
43
+ ```
44
+ JavaScript はこのような依存関係を記述することを苦手(というか放棄)しています。
45
+ ただ、最近のJavaScriptには便利なものがありますので、こちらをご利用になるといいでしょう。
46
+ [import - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/import)