[Ruby on Rails] Animation de défilement facile de javascript (en utilisant ScrollReveal.js)

Cible

scroll.gif

Environnement de développement

ruby 2.5.7 Rails 5.2.4.3 OS: macOS Catalina

Qu'est-ce que ScrollReveal.js?

https://scrollrevealjs.org/ Ceci est le site officiel.

ScrollReveal is a JavaScript library for easily animating elements as they enter/leave the viewport.


 ScrollReveal est une bibliothèque JavaScript qui facilite l'animation d'un élément lorsqu'il entre et sort de la fenêtre.
 * Google Traduction

# couler
 1 Présentez ScrollReveal.js
 2 Modifier la vue
 3 Modifier le fichier js

# Présentez ScrollReveal.js

 ① Lors de la lecture avec CDN (recommandé)
 Dans la tête de application.html.erb

#### **`//unpkg.com/scrollreveal">`**
```<script src="https

 Ajoutez cette ligne pour rendre ScrollReveal.js disponible.


#### **`erb:app/views/layouts/application.html.erb`**
Ddtt <%= csrf_meta_tags %> <%= csp_meta_tag %>

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %> <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>

```

② Lors du téléchargement d'un fichier https://github.com/jlmakes/scrollreveal Téléchargez le fichier zip à partir d'ici et téléchargez "scrollreveal.min.js" à l'intérieur. Enregistrez-le dans app / assets / javascripts. Après cela, <script src = "/ js / scrollreveal.min.js"> </ script> Ajoutez-le dans la tête ou en haut du fichier d'affichage.

Modifier la vue, CSS

Pour des raisons d'explication, décrivez css en html.

erb:app/views/homes/top.html.erb


<div class="page">
  <span>Veuillez faire défiler</span>
</div>

<div class="page">
  <div class="box"></div>
</div>

<style>
.page {
  position: relative;
  height: 100vh;
}
.box {
  width: 500px;
  height: 200px;
  background-color: red;
}
</style>

Modifier le fichier js

C'est la forme de base.

app/asstes/javascripts/application.js


$(function(){
  ScrollReveal().reveal('.box');
});

Cela ressemble à ceci dans la forme de base. 画面収録 2020-10-23 20.11.11.mov.gif L'affichage est considérablement plus rapide car il est transformé en image gif, Comme vous pouvez le voir, il est difficile de voir s'il y a trop d'animation. Par conséquent, nous ajouterons des options.

Description de la vidéo dans la cible.

app/asstes/javascripts/application.js


$(function(){
  ScrollReveal().reveal('.box', { 
    duration: 2000, 
    scale: 4,
    reset: false
  });
});

Il est également possible d'ajouter des options comme celle-ci. L'option utilisée cette fois est

-duration: temps pour terminer l'animation --scale: la taille de l'élément avant son affichage --reset: active / désactive l'élément qui revient à la position initialisée en quittant la fenêtre

Parce qu'il existe diverses autres options disponibles Si vous êtes intéressé, veuillez consulter le site officiel. https://scrollrevealjs.org/api/delay.html

Résumé

La plupart des sites connus ont une sorte d'animation, Je pense que c'est obligatoire si vous voulez le créer à partir de maintenant. Cependant, si vous utilisez ce qui précède, il peut être introduit en quelques minutes, c'est donc recommandé.

De plus, sur Twitter, les technologies et les idées qui n'ont pas été téléchargées sur Qiita sont également téléchargées, donc Je vous serais reconnaissant si vous pouviez me suivre. Cliquez ici pour plus de détails https://twitter.com/japwork

Recommended Posts

[Ruby on Rails] Animation de défilement facile de javascript (en utilisant ScrollReveal.js)
Essayez d'utiliser l'attribut de requête Ruby on Rails
Connaissance de base de Ruby on Rails
[Rails] Ajout de la fonction de commentaire Ruby On Rails
[Ruby on Rails] Vérification du code à l'aide de Rubocop-airbnb
Remarques sur l'utilisation de FCM avec Ruby on Rails
[Ruby on Rails] Diaporama d'images utilisant Skippr
[Ruby on Rails] Notation japonaise de l'erreur
Explication de Ruby sur rails pour les débutants ①
[Ruby on rails] Implémentation d'une fonction similaire
Implémentation de la fonction de connexion Ruby on Rails (Session)
[Ruby on Rails] Jusqu'à l'introduction de RSpec
Recommandation de classe de service dans Ruby on Rails
Ruby on Rails ~ Principes de base de MVC et du routeur ~
[Ruby on Rails] Un mémorandum de modèles de mise en page
[Ruby on Rails] Affichage individuel des messages d'erreur
Ruby on Rails élémentaire
Principes de base de Ruby on Rails
Association Ruby On Rails
[Ruby on Rails] Communication asynchrone de la fonction de publication, ajax
Implémentation de la fonction de connexion Ruby on Rails (édition de devise)
[Ruby on Rails] Traitement commun entre les contrôleurs (à l'aide de concerts)
Explication de Ruby sur rails pour les débutants ⑥ ~ Création de validation ~
Explication de Ruby on rails pour les débutants ② ~ Création de liens ~
Explication de Ruby on rails pour les débutants ⑦ ~ Implémentation Flash ~
Record d'apprentissage de Ruby on rails -2020.10.03
Création de portfolio Ruby on Rails
Ruby on Rails Paramètre de la fonction d'envoi automatique des e-mails (avec Gmail)
Record d'apprentissage Ruby on rails -2020.10.04
[Ruby on Rails] Debuck (binding.pry)
Record d'apprentissage de Ruby on rails -2020.10.05
Record d'apprentissage de Ruby on rails -2020.10.09
[Procédure 1 pour les débutants] Ruby on Rails: Construction d'un environnement de développement
[Ruby on Rails] Élimination de Fat Controller-First, logic to model-
(Ruby on Rails6) Affichage de la base de données qui a obtenu l'identifiant de la base de données
Supprimer tout le contenu de la page de liste [Ruby on Rails]
Une note sur la fonction de départ de Ruby on Rails
[Ruby on Rails] Le carrousel de bootstrap4 est implémenté sous forme de diaporama en utilisant chaque méthode.
Record d'apprentissage Ruby on rails-2020.10.07 ①
Annuler la migration de Ruby on Rails
Explication de Ruby on rails pour les débutants ③ ~ Création d'une base de données ~
Record d'apprentissage de Ruby on rails -2020.10.06
Résumé de la validation Ruby on Rails
Mémorandum de base Ruby on Rails
[Ruby on Rails] Défilement infini à l'aide de gem kaminari et jscroll
Créez un grand nombre d'enregistrements avec une seule commande à l'aide du fichier seeds.rb Ruby on Rails
[Ruby on Rails] Changez la destination de sauvegarde du recueil de gemmes * Remarque
Explication de Ruby on rails pour les débutants ⑤ ~ Modifier et supprimer la base de données ~
Effacer N + 1 dans les actes_as_tree de l'arborescence Ruby on Rails Gem