Ich bin in meinem Rails 4-App auf ein Problem gestoßen, als ich versuchte, JS-Dateien "auf die Rails-Art" zu organisieren. Sie waren zuvor über verschiedene Ansichten verstreut. Ich habe sie in separate Dateien organisiert und mit dem Asset-Pipeline kompiliert. Allerdings habe ich gerade erst gelernt, dass das "ready"-Ereignis von jQuery bei aufeinander folgenden Klicks nicht ausgelöst wird, wenn Turbo-Linking aktiviert ist. Beim ersten Laden einer Seite funktioniert es. Aber beim Klicken auf einen Link wird nichts innerhalb des ready( function($) {
ausgeführt (weil die Seite tatsächlich nicht erneut geladen wird). Gute Erklärung: hier.
Also meine Frage ist: Wie kann sichergestellt werden, dass jQuery-Ereignisse ordnungsgemäß funktionieren, während Turbo-Links aktiviert sind? Wrapperst du die Skripte in einem Rails-spezifischen Listener? Oder vielleicht hat Rails irgendeine Magie, die es unnötig macht? Die Dokumentation ist ein wenig vage darüber, wie dies funktionieren sollte, insbesondere in Bezug auf das Laden mehrerer Dateien über die Manifeste wie application.js.