Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Переделать скрипт для анимаций (https://javascript.ru/forum/dom-window/80611-peredelat-skript-dlya-animacijj.html)

ethereal 30.06.2020 04:48

Переделать скрипт для анимаций
 
Здравствуйте! Помогите пожалуйста нубу, ножно переделать этот скрипт:
https://codepen.io/ethereal94/pen/LYGzXeG

Нужно передать значение из "data-duration" и "data-delay" в анимацию для каждой отдельно (сейчас по умолчанию 500).

Также если возможно, после завершения каждой анимаций, удалять div.
Вот тут:
complete: function(anim) {    
        $( this ).remove();    
    }

:(
Буду очень благодарен за помощь. Спасибо!

рони 30.06.2020 07:32

waypoints параметры из dataset
 
ethereal,
<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
.item {
  width: 300px;
  height: 300px;
  margin: 20px;
  background: skyblue;
}
.item-inner {
  width: 100px;
  height: 300px;
  background: gray;
}
    </style>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/waypoints/4.0.1/jquery.waypoints.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.0/anime.min.js"></script>
  <script>
$(function() {
$('.item-inner').waypoint(function() {
    var el = this.element, {duration, delay} = el.dataset;
    var CSStransforms = anime({
    targets: el,
    width: [300],
		easing: "easeOutSine",
		duration,
        delay,
    complete: _ => el.remove()
    });
}, {
    offset: '100%'
});
});
  </script>
</head>
<body>
<div class="item">
  <div class="item-inner" data-duration="2000"  data-delay="1000"></div>
</div>
<div class="item">
  <div class="item-inner" data-duration="1000"  data-delay="3000"></div>
</div>
<div class="item">
  <div class="item-inner" data-duration="2000"  data-delay="3000"></div>
</div>
<div class="item">
  <div class="item-inner" data-duration="1500"  data-delay="2500"></div>
</div>
<div class="item">
  <div class="item-inner" data-duration="1000"  data-delay="1000"></div>
</div>
</body>
</html>


Часовой пояс GMT +3, время: 10:08.