Maison > interface Web > js tutoriel > Comment puis-je m'assurer que les événements jQuery fonctionnent correctement avec Rails 4 et Turbo Links ?

Comment puis-je m'assurer que les événements jQuery fonctionnent correctement avec Rails 4 et Turbo Links ?

Linda Hamilton
Libérer: 2024-12-14 18:46:18
original
804 Les gens l'ont consulté

How Can I Ensure jQuery Events Work Correctly with Rails 4 and Turbo Links?

Rails 4 : Amélioration des fonctionnalités d'événements jQuery avec des Turbo-Links

Lors de l'organisation de fichiers JavaScript dans une application Rails 4, il n'est pas rare de rencontrer problèmes avec l'événement "ready" de jQuery. Avec les liens turbo activés, cet événement ne se déclenche pas lors des clics suivants, laissant les gestionnaires d'événements dans ready(function($) {} inactifs.

Pour relever ce défi, une solution consiste à implémenter un écouteur ou un écouteur spécifique à Rails. tirer parti des propres mécanismes de Rails pour garantir la fonctionnalité des événements.

Une approche efficace consiste à définir une fonction dans CoffeeScript ou JavaScript :

ready = ->
  ...your coffeescript goes here...

$(document).ready(ready)
$(document).on('page:load', ready)
Copier après la connexion

Cette approche utilise l'événement page:load, que turbo-links déclenche après le chargement de la page.

Pour les applications Rails 5 (utilisant Turbolinks 5), l'événement page:load a été remplacé par turbolinks:load, qui se déclenche sur la page initiale charger également. Par conséquent, l'écouteur d'événement suivant suffit :

$(document).on('turbolinks:load', function() {
  ...your javascript goes here...
});
Copier après la connexion

En implémentant cette approche, la fonctionnalité d'événement jQuery peut être intégrée de manière transparente aux turbo-liens, garantissant que l'événement gestion des chargements de pages initiaux et ultérieurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal