1. ホーム
  2. javascript

[解決済み] Rails 5: $(document).ready() をターボリンクで使用する方法

2023-03-17 15:01:22

質問

ターボリンクが正常に動作しない $(document).ready() イベントが発生しないようにします。 ここで はこちら . リンク先の回答にある解決策はどれもRails 5では動作しませんが。以前のバージョンのように、各ページの訪問時にコードを実行するにはどうしたらよいでしょうか?

どのように解決するのですか?

を聞くよりも、むしろ ready イベントを聞くのではなく、Turbolinks がページ訪問ごとに発生させるイベントにフックする必要があります。

残念ながら、Turbolinks 5 (Rails 5 で登場するバージョン) は書き直され、以前のバージョンの Turbolinks と同じイベント名を使用しないため、前述の回答は失敗してしまいます。現在有効なのは turbolinks:load のようなイベントです。

$( document ).on('turbolinks:load', function() {
  console.log("It works on each visit!")
})