AOS (animate on scroll) library not working when selecting elements to animate with jQuery

charlesFromSoCal picture charlesFromSoCal · May 14, 2019 · Viewed 10.9k times · Source

I'm trying to animate H1 elements for many pages using AOS (animate on scroll). I have several pages that use the title so I'm selecting all the titles with jQuery. If I type in the attributes manually in each title it works, but not when adding them through jQuery. I have selected other elements with jQuery to animate them and they do work. The tile is at the very top of each page.Thanks!

 <link href="https://unpkg.com/[email protected]/dist/aos.css" rel="stylesheet">
 <script src="https://unpkg.com/[email protected]/dist/aos.js"></script>

 <h1 class="title"> </h1>

 $(document).ready(function () {
    $('.title').attr({
       "data-aos": "zoom-in",
       "data-aos-duration": "2000"
    });

    AOS.init();
 });

 //refresh animations
 $(window).on('load', function() {
    AOS.refresh();
 });

Answer

C&#233;sar Camilo Cruz C&#225;ceres picture César Camilo Cruz Cáceres · Feb 12, 2020

<link href="https://unpkg.com/[email protected]/dist/aos.css" rel="stylesheet">
<script src="https://unpkg.com/[email protected]/dist/aos.js"></script>

<h1 class="title"> </h1>

$(document).ready(function () {
    $('.title').attr({
        "data-aos": "zoom-in",
        "data-aos-duration": "2000"
    });
    setTimeout(() => {
        AOS.init();
    }, 120);
});