javascript - AnimeJS TranslateY:0 跳出页面
问题描述
使用动漫...
当active=true
元素按预期动画时,从页面下方开始向上移动。
当active=false
元素应该转换回页面下方的起始位置时,但似乎在返回到 0 之前跳到页面下方很远。
萨斯
.modal
--modalHeight: calc(100vh - 80px)
--modalTransition: calc(-1 * var(--modalHeight))
position: fixed
height: var(--modalHeight)
bottom: var(--modalTransition)
Javascript
handleModal(active){
const modalTransition = getComputedStyle(document.querySelector('div.modal')).getPropertyValue('--modalTransition')
if(active){
anime({
targets: 'div.modal',
translateY: [0, modalTransition],
duration: 800,
easing: 'easeOutQuad',
})
} else {
anime({
targets: 'div.modal',
translateY: [modalTransition, 0],
duration: 800,
easing: 'easeOutQuad',
})
}
}
解决方案
我的回答是将 CSScalc()
值转换为整数值,方法是将值替换为modalTransition
:
const modalTransition =
-Math.abs(parseInt(getComputedStyle(document.querySelector('div.modal')).height))
推荐阅读
- java - 使用服务启动时未显示带有自定义文本和图标的通知
- c# - 剃须刀文件夹“_framework”和“_content”在哪里?
- spring - 保护 application.properties 中的一些密钥 - 春季启动应用程序
- shell - 执行 Oracle PL/SQL 代码的 Shell 脚本
- concrete5 - Concrete5 站点 - 多个协作者/管理员
- c++ - 类模板构造函数中的变量
- python - Pipenv 在 Ubuntu 和 WSL 上安装失败
- java - getter方法中的变量引用
- python - 另一个 JaggedArray 中一个 JaggedArray 的元素的尴尬数组测试
- perl - 防止新行的 perl 脚本