javascript - 使用 jQuery 的 .css() 进行平滑的 css 更改,无需 css-transitions
问题描述
有没有办法用 jQuery平滑地改变.css() ?就像通过计算每一步(如 0、1、2、3、...、198、199、200)将 .css("top", myValue) 从 0 平滑地更改为 200 一样?我不想使用 CSS 过渡。原因(长话短说):运行站点的设备不支持“top”平滑过渡,transformY 强制浏览器的一个尚未修复的错误。
当然,我可以编写一个循环,例如将“myValue”从 0 计数到 200 并更新它。但如果有 jQuery 实现的方式,我会很高兴。
$("myDiv").css("top", myValue); // 使其平滑
解决方案
试试$.fn.animate
(http://api.jquery.com/animate/)
$("myDiv").animate( {top: "+=200"}, duration );
(注意:它相对于当前位置。+=1
添加 1px 并-=1
删除 1px。)
推荐阅读
- presto - Presto 资源组
- elasticsearch - 弹性搜索精确字段值检索
- r - 测试每个因子水平的结果差异(是/否) - 因子水平中缺少一个结果水平
- postgresql - port Oracle decode() using variadic, anyarray, and anyelement
- ios - 如何以及何时将数据保存在数据库中。如果用户正在编辑的对象从服务器中删除
- java - 尝试强制转换子类时出现 ClassCastException
- google-apps-script - 调整由谷歌电子表格创建的谷歌幻灯片的图表位置
- database - aws aurora 中做了哪些资源隔离?
- angular - Angular 5 Material 多级轮播样式 SideNav 菜单(无下拉菜单)
- c - 如何将带有 unsigned char 的 2 个字节拆分为 5 位、5 位和 6 位,并为它们分配不同的功能?