написать впереди
Эффект исчезновения, когда Танос щелкает пальцами. Эффект возникает из-за поиска в Google «thanos» или «thanos». это горячоFeature, Я пропускаюF12Я попытался посмотреть, как это реализовано, а также нашел некоторые аудио- и графические ресурсы. Позже нашел существующий проект на githubThanos_Dust, поэтому обратитесь к части его кода. На самом деле его код относительно закончен, на его основе я написал его с помощью vue, добавил несколько героев, исправил некоторые ошибки и добавил некоторые эффекты.
demo
- Нажмите на перчатку, и половина героя исчезнет со звуковым эффектом и анимацией щелчка пальцами.
- После исчезновения нажмите еще раз, исчезнувший герой вернется.
Нажмите на ссылку ниже, чтобы испытать
деталь
-
Половина героев выбирается случайным образом по следующему алгоритму:
arr.sort(function() { return 0.5 - Math.random(); }); -
Объяснение эффекта выбранного героя в пепел:
- использоватьhtml2canvasБиблиотека будет там, где находится каждый герой
domУзел отображается какcanvasузел - пройти черезgenerateFramesметод, весь блок
canvasИзображение холста разделено на множество блоков по пикселям - Создать новый с выбранным героем
domКонтейнер того же местоположения и того же размера узла перезаписывает оригиналdomузел - Нарисуйте блок, созданный на втором шаге, на новый холст и передайте
appendChildметод добавляется в родительский контейнер, созданный на третьем шаге - Случайным образом установите каждый блок
rotateугол иtranslateПиксели, вы можете завершить эффект пепла - герой, который будет переопределен
domУзел становится невидимым, и операция щелчка пальца завершена.
- использоватьhtml2canvasБиблиотека будет там, где находится каждый герой
-
Время поворота, эффект героя возвращается к оригиналу
domУзлы становятся видимыми, и добавляется анимация ответа. (googleОригинальная анимация реставрацииcolorУстановить какgreen, так как здесь нет текста и эффект не очевиден, установлено значениеbackground-color)
наконец
Весь процесс на самом деле не имеет ничего общего с vue, независимо от того, какой стек фронтенд-технологий используется. Я никогда раньше не имел дела с канвой, и это кажется немного интересным, возможно, позже я внесу какие-то изменения, и я продолжу изучать канвас. Наконец прикрепленгитхаб-адрес.