Javascript/jQuery の実行とそのシーケンスに関する質問/説明。
ここで自分の質問に答えているように見える場合は申し訳ありませんが、このプロセスで重要な何かが欠けていると感じています。
この質問をもたらしたDOMの準備ができていなかったため、セレクターが使用されていないと言われました。スクリプトは最初、ready jQuery の ready メソッドを使用して頭の中にありました。
みんな、ありがとう。
問題:
- Drupal テンプレート ファイルにはアクセスできません。
- 頭にのみ追加できます。
- jQuery による追加は、script タグではあまり役に立ちません。
- 私たちのソリューションは現在、マークアップ内のファイルにリンクしています。
- ここでのプロセスについては、明確化を本当に求めています。
環境:
(申し訳ありません)...要素は、頭のスクリプトから、セレクターによってターゲットにされていませんでした。問題なく HTML タグを対象としていたため、構文は正しかった。
私の理解では、DOM が完全に構築された後に、ready メソッド/結果のリスナーがトリガーされるということでした。
私がすでに知っていると信じていること:
スクリプトは、マークアップの body タグのすぐ上に配置するのが理想的です。
トークナイザーがスクリプト タグに遭遇すると、すべてを停止し、スクリプトを実行することを知っています (遅延/非同期でない限り)。
これが、DOM の準備が整うように、body の終了タグの上に配置するのが理想的である理由です。
jQuery ready メソッドがリスナーをアタッチすることを知っています。DOM がロードされた後にブラウザーが準備完了状態に切り替わると、リスナーが起動します。
質問:
これらすべてを考えると、頭に配置すると、トークナイザーのためにすぐに実行されるため、ready メソッドが役に立たなくなりますか?
これは本当に複数のwindow.onloadsの衝突/上書きを避けるためですか? (明確にする必要がありました。)