検索

ホームページ  >  に質問  >  本文

ドキュメントのロード時および要素のクリック時に JS 関数を実行します。

私は、使用している商用 Web アプリケーションを拡張する Tampermonkey スクリプトを作成しようとしています。非常に基本的な意味では、ページに何らかの URL が表示されたら、URL から数値を抽出し、その数値を使用して新しいリンクを構築し、それを親要素に追加する必要があります。

これまでのところ、私はこれを持っていますが、要素をクリックしたとき(ページネーションは単なるULです)、またはドキュメントが読み込まれたときに機能しません。この関数は、ドキュメント内の任意の場所をクリックすると実行されるように設定されているかのように動作することがわかりました。 JS がページが読み込まれたことを報告するとき、それはページがまだ完全に読み込まれていないようなものです。

リーリー

UL 要素は次のようになります:

リーリー

上で述べたように、ドキュメント上の任意の場所をクリックしたときに実行されるように設定すると、関数は期待どおりに機能します。私をさらに混乱させるのは、document.onload を使用すると機能しないことです。ページは、操作を開始した後でのみデータの読み込みを開始するようです。ページネーションがクリックされたときに関数を実行しようとしている理由は、ページがすべてのデータを取得してどこか(目に見えない)に保存し、ページネーションがクリックされたときにページをフリックするだけであるように見えるためです。したがって、ページネーションがクリックされたら、新しいページで生成されたリンクで関数を実行する必要があります。

document.onload の実行を遅らせるか、ドキュメント データがロードされた後を理解し、UL ページネーション要素がクリックされたときに実行されない理由を理解するための他の方法が必要なようです。

P粉777458787P粉777458787438日前634

全員に返信(1)返信します

  • P粉122932466

    P粉1229324662023-09-16 09:08:56

    ページがレンダリングされるのを待ってからすべての要素をループしてアンカー タグを追加するのではなく。 MutationObserver を使用して、ロジックの実行後にレンダリングされる要素を処理するだけです。

    JS

    リーリー

    返事
    0
  • キャンセル返事