animition和transition的配合

2024-08-26 15:08
文章标签 配合 transition animition

本文主要是介绍animition和transition的配合,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

   $("button:first").click(function() {
        $boy.addClass('slowWalk').transition({
            'left': $("#content").width() + 'px',
        }, 10000);
    });

添加一个class“slowWalk”,里面用到了animation,用于切换人物画面,形成动画:

.slowWalk {
       -webkit-animation-name: person-slow;
       -webkit-animation-duration: 950ms;
       -webkit-animation-iteration-count: infinite;
       -webkit-animation-timing-function: steps(1, start);
       -moz-animation-name: person-slow;
       -moz-animation-duration: 950ms;
       -moz-animation-iteration-count: infinite;
       -moz-animation-timing-function: steps(1, start)
   }

 @-webkit-keyframes person-slow {
       0% {
           background-position: -0px -291px;
       }
       25% {
           background-position: -602px -0px;
       }
       50% {
           background-position: -302px -291px;
       }
       75% {
           background-position: -151px -291px;
       }
       100% {
           background-position: -0px -291px;
       }
   }
   

同时用transition让人物走动起来,改变left的坐标,例如让它走100个像素,transition实现慢慢移动形成走路的过程。

$boy.addClass('slowWalk').transition({
            'left': 100px,
        }, 10000);

同时添加一个按钮让人物可以停下来,分两步:

(1)强制给left一个固定值,让transition停下来;

(2)让animation停下来,

$("button:last").click(function() {
        var left = $boy.css('left');
        // 强制做了一个改变目标left的处理,提取现在的left值
        // 动画是要运行10秒,所以此时动画还是没有结束的
        $boy.css('left',left);  //赋值left值给boy的css属性
        // 增加暂停的样式
        $boy.addClass('pauseWalk'); //pauseWalk属性包含animation-play-state设置为paused让它暂停,代码如下:
    });

 .pauseWalk {
            -webkit-animation-play-state: paused;
            -moz-animation-play-state: paused;
        }

这篇关于animition和transition的配合的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108908

相关文章

13 transition数组的动画使用

划重点 动画:transitiontransition-group :数组动画数组的 添加 / 删除 豆腐粉丝汤 清淡又健康 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><me

12 动画transition的使用2

划重点 Vue 动画:transition / transform在动画周期中执行动动画(上一篇是通过动画样式控制动画) 清蒸扇贝 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><

树莓派使用WiringPi库配合时间函数实现超声波测距

树莓派使用WiringPi库配合时间函数实现超声波测距 文章目录 树莓派使用WiringPi库配合时间函数实现超声波测距一、HR-04超声波模块原理1.1 超声波测距原理:1.2 超声波时序图: 二、树莓派与超声波模块硬件连接三、时间函数3.1 时间函数gettimeofday()原型和头文件: 四、实现超声波测距4.1 使用wiringOP库和时间函数实现超声波测距: 五、实现超声波测距

jQuery Mobile 页面切换动画的使用(data-transition)

如果需要转到的HTML是其他链接,不是内部page,需要加上rel='external'属性,此时动画效果无效。

LLAMA3.1 8B 本地部署并配合Obsidian建立本地AI知识管理系统

目前,LLAMA3.1模型分为8B、70B、405B三个版本,其中70B和405B对于显存的要求均已超过了一般家用电脑的配置(或者换个说法,用一张4090也是带不起来的),所以运行8B即可。LLAMA3.1 8B的性能约相当于ChatGPT3.5。 经过我的测试4080、2080、intel ultra 9 185H(无独立显卡,其能力约相当于1060)都是可以带得动8B模型的,当然显卡越好,响

VUE3 使用 <transition> 实现组件切换的过渡效果

由于我想在项目中实现路由组件切换时的平滑过渡效果,以避免页面加载时的突兀感,大致效果如下: 上面的代码是使用的若依的代码,代码具体如下所示: <section class="app-main"><transition name="fade-transform" mode="out-in"><keep-alive :include="cachedViews"><router-view :key=

AOP和注解的配合使用(封装通用日志处理类)

自定义注解 @Inherited@Documented@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface MyLog {String value() default "";} 定义切面 @Aspect@Component@Slf4jpublic class LogAop

NG Cannot transition to abstract state

Angularjs学习过程中使用ui-router模块时遇到一个问题: Error: Cannot transition to abstract state 'xxx' 在这里找到了答案: http://stackoverflow.com/questions/24969441/angularjs-ui-router-default-child-state-and-u

前端宝典二十五:vue2高阶用法mixin、transition、slot

本文主要探讨vue2中几个高阶的用法:mixin、transition、slot 一、mixin 在 Vue 中,mixin(混入)是一种用于在多个组件之间共享代码的机制。它允许你定义可重用的选项对象,并将其混入到不同的组件中。 1、使用方法 创建一个混入对象: const myMixin = {data() {return {sharedData: '这是混入中的共享数据',};},m

前端三件套配合MarsCode实现钉钉官网动画 # 豆包MarsCode

文章目录 如何固定动画区域创建项目MarsCode 设置样式MarsCode 优点1MarsCode 缺点MarsCode 优点2 js实现动画实现获取动画曲线的函数为什么实现这个函数?根据当前滚动位置,计算每一个元素不同的数值更新 dom 的 style更新 animationMapgetDomAnimation @豆包MarsCode 要写出钉钉官网动画,首先第一步就是分