SakuraWi - BLog

WEBエンジニア。聴いたお話をまとめておく倉庫的な。スタックストックスタック!

【Chrome拡張】DOMの表示を待ってからクリックさせたい


【Chrome拡張】編です。

今回はタブが新しく開けたりした場合にDOMの表示を待ってからjsでクリックさせたい時のノウハウを書きます。

結論から書くと以下です。

const jsInitCheckTimer = setInterval(jsLoaded, 1000);


function jsLoaded() {
      if (document.querySelector('.xxx') != null) {
          clearInterval(jsInitCheckTimer);
          $(".xxx").click();

...
    

setIntervalによって、その時間毎に実行させます。 loadがされていればif文の分岐から処理がされます。 この時にintervalが終了するコードを差し込んでいますね。

色々settimeoutなども試しましたが、これがうまく動作してそうなので。

参考にさせてもらった記事

コードはこちらから書かせてもらいました。 https://qiita.com/3mc/items/c3c580ca5de4a2d3990d