jquery动画

Posted fqh123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery动画相关的知识,希望对你有一定的参考价值。

英雄难过棍子关小游戏可以带大家熟悉jquery动画

看源码

index.js:

$(function(){
var newNode=$("<div class=‘shadow‘></div><div class=‘dialog‘><p>游戏说明:<br /> 1、该游戏为一款好玩的闯关挑战类游戏,可以锻炼玩家的判断力,提高玩家的敏捷思维能力。<br /> 2、可以选择闯关模式或者挑战模式开始游戏。进入闯关模式后点击上方按钮可选择已解锁的关卡。<br /> 3、闯关模式总共有十个关卡,每通过一个关卡,游戏难度会逐渐增大。如果玩家玩通关闯关模式,会获得W币奖励。 <br /> 4、挑战模式会计算积分,玩家可以在线存档,也可以提交自己的积分来查看自己的排行。<br /> 5、本游戏引入了金币机制,即W币,初始金币为3个,玩家可以通过每日签到(+1 W币,连续签到从第二天起+2 W币)和完成每日的挑战任务(随机+7或8或9W币)或玩通关闯关模式(随机+10或11或12 W币)来获得W币,W币可以用来购买道具。本游戏目前含有四种道具,分别是原地复活道具、水波特效道具、蝴蝶跟随鼠标特效道具和下雪特效道具。原地复活道具只可以在挑战模式使用,其它三种道具均为特效道具,每次购买后有七天使用期限,七天后需再次购买才可继续使用。</p><button class=‘back1‘>返回</button></div> ");
$(".intro").click(function(){
    $(".contain").after(newNode);
    $(".shadow").css("height",$(window).height());
})
$(".dialog>button").live("click",function(){//live可以绑定动态添加元素,on在1.9版本之前不可以
    $(".dialog").remove();
    $(".shadow").remove();
})

})

index.css

*{
    margin:0;padding:0;list-style: none;text-decoration:none;
}
body{
    background: url(‘../img/3.jpg‘);
}
h3{
    /*background: pink;*/display: block;text-align: center;margin-top:50px;font-size: 20px;
}
.contain{
    width:500px;/*background: red;*/position: absolute;left:50%;margin-left:-200px;
}
.contain a{
    width:130px;height:36px;text-align: center;line-height: 36px;display: block;
    border:3px solid #67C330;margin-top:100px;color: black;border-radius:8px;background: 
    linear-gradient(180deg,white,#67C330);
}
.shadow{
    width:100%;position: absolute;top:0;background: rgba(0,0,0,0.5);
}
.dialog{
    width:500px;position: absolute;background: white;left:50%;margin-left: -240px;margin-top:20px;
}
.dialog p{
    height:300px;overflow: scroll;padding:20px;
}
.dialog button{
    width:130px;height:36px;border:2px solid #3D92B6;background: linear-gradient(180deg,white,#3D92B6);
    margin:50px auto 20px;display: block;border-radius: 8px;box-shadow: 0 0 0 3px white inset;
    cursor: pointer;
}

zhuye.css

*{
    margin:0;padding:0;list-style: none;text-decoration: none;
}
body{
    background:url(‘../img/19.jpg‘);
}
.nav1{
    /*background: pink;*/text-align: center;margin:50px auto;
}
.gq{
    width:150px;height:36px;background: white;display: inline-block;text-align: center;
    line-height: 36px;border:1px solid black;border-radius: 8px;margin-left:100px;
}
.caidan{
    background:linear-gradient(to right bottom,white,#EEB071);width:150px;height:36px;
    display: inline-block;text-align: center;line-height: 36px;border:#EE7700 solid 1px;
    box-shadow: 0 0 2px 3px #EE7700;margin-left:100px;border-radius:8px;color:black;
}
.btn{
    display: block;width:100px;height: 100px;background: url(‘../img/btn-bg.png‘);margin-left:55%;
}
.contain{
    /*background:pink;*/position: fixed;bottom:0;height:250px;width:100%;
}
.pillarbox>div{
    width:100px;height:250px;background: yellow;position: absolute;bottom:0;
}
.man{
    position: absolute;bottom:98%;left:50px;
    
}
.stick{
    width:5px;height:0;background: green;position: absolute;bottom:250px;left:95px;

}
.success,.fail{
    width:400px;background: rgba(0,0,0);color:white;padding:10px;position: absolute;
    left:50%;margin-left:-200px;margin-top:50px;text-align:center;z-index: 2;
    border-radius: 10px;box-shadow: 2px 2px 0px 2px rgba(0,0,0,0.5); display: none;
}
.success>p,.fail>p{
    font-size: 18px;
}
.success>button,.fail>button{
    margin-top:50px;font-size: 18px;padding:5px;width:130px;height:36px;background: white;
    border-radius: 8px;
}
.shadow{
    width:100%;background:red;opacity: 0.5;position: absolute;top:0;
}
.stickdown{
    transform:rotate(90deg);
    -ms-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
    -webkit-transform:rotate(90deg);
    -o-transform:rotate(90deg);
    transform-origin:5px 100%;
    transition:transform 0.35s linear;
}

下面是主要学习jquery知识点包括动画的知识:

zhuye.js

$(document).ready(function(){
    var stop=true;//定义一个标签
    var ind=0;
    var min=60;
    var max=$(".contain").offset().top-min//offset()获取对象left和top值  top是offset()的top属性
    console.log(max)
    // 排列柱子的函数
    function play(){
            var num=0;
            for(var i=0;i<4;i++){
            var par=parseInt(Math.random()*(max-min)+min);
            if(i==0){
                $(".pillarbox>div").eq(0).css("left",0);
            }else{
                num=num+par+100;
                $(".pillarbox>div").eq(i).css("left",num);
            }
        }
    }
    play();//执行排列柱子的函数
    // 鼠标点击按钮
    $(".btn").mousedown(function(){
        if(stop){
            $(".btn").css("background","url(img/btn-bg-click.png)")//点击按钮 背景变成灰色
            $(".stick").animate({"height":max},2500);//点击按钮  杆子增长
        }
        
    })
    // 鼠标点击按钮
    // 鼠标松开按钮
    $(".btn").mouseup(function(){
        if(stop){
            stop=false;
            $(".btn").css("background","url(img/btn-bg.png)")//松开按钮  恢复正常颜色
            $(".stick").stop(false,false).addClass(‘stickdown‘);//松开按钮  杆子停止动画
            setTimeout(function(){
                $(".man>img").attr("src","img/stick.gif");
                var stickleft=parseInt($(".stick").css("left"));//string  获取杆子的left值
                console.log(typeof(stickleft))//num
                var stickheight=$(".stick").height();//height()方法获得或设置对象的高度
                console.log(typeof(stickheight))//num
                var nextdivleft=parseInt($(".pillarbox>div").eq(ind+1).css("left"))
                $(".man").animate({"left":stickleft+stickheight},1000,function(){//回调函数,是否掉下
                    if(stickleft+stickheight>nextdivleft&&stickleft+stickheight<nextdivleft+100){
                        $(".man").css("left",nextdivleft+50);//小人left值在下一根柱子的50px处
                        $(".man>img").attr("src","img/stick_stand.png");//小人变成静态
                        $(".stick").css({"left":nextdivleft+95,"height":0}).removeClass("stickdown");
                        $(".contain").animate({"left":-nextdivleft},1000);//柱子整体左移
                        stop=true;
                        ind++;
                        if(ind==3){
                            $(".success").show();
                            success();
                        }
                    }else{//否则小人掉下去
                        $(".man").animate({"bottom":-$(".man").height()},1000,fail)
                        $(".shadow").css("height",$(window).height());
                    }
                });
            },1000)
        }
        
    })
    // 鼠标松开按钮
    // replay按钮
    $(".replay").click(function(){
        replay();
    })
    function replay(){
        play();
        $(".success").hide();
        $(".fail").hide();
        $(".stick").css({"left":95,"height":0}).removeClass("stickdown");
        $(".contain").css("left",0);
        $(".man").css({"left":50,"bottom":‘98%‘});
        $(".man>img").attr("src","img/stick_stand.png");
        $(".shadow").css("height",0);
        stop=true;
        ind=0;
    }
    // 下一关  next
    var leval=1;
    $(".next").click(function(){
        $(".gq").html("关卡"+(++leval));
        replay();
    })
    // 成功名言
    function success(){
        var successarr=[
            ‘勇敢坚毅真正之才智乃刚毅之志向。 —— 拿破仑‘,
            ‘志向不过是记忆的奴隶,生气勃勃地降生,但却很难成长。 —— 莎士比亚‘,
            ‘骏马是跑出来的,强兵是打出来的。‘,
            ‘只有登上山顶,才能看到那边的风光。‘,
            ‘如果惧怕前面跌宕的山岩,生命就永远只能是死水一潭。‘,
            ‘平时没有跑发卫千米,占时就难以进行一百米的冲刺。‘,
            ‘梯子的梯阶从来不是用来搁脚的,它只是让人们的脚放上一段时间,以便让别一只脚能够再往上登。‘,
            ‘没有激流就称不上勇进,没有山峰则谈不上攀登。‘,
            ‘真正的才智是刚毅的志向。 —— 拿破仑‘,
            ‘山路曲折盘旋,但毕竟朝着顶峰延伸。‘,
            ‘只有创造,才是真正的享受,只有拚搏,才是充实的生活。‘,
            ‘敢于向黑暗宣战的人,心里必须充满光明。‘,
            ‘种子牢记着雨滴献身的叮嘱,增强了冒尖的勇气。‘,
            ‘自然界没有风风雨雨,大地就不会春华秋实。‘,
            ‘只会幻想而不行动的人,永远也体会不到收获果实时的喜悦。‘,
            ‘勤奋是你生命的密码,能译出你一部壮丽的史诗。‘,
            ‘对于攀登者来说,失掉往昔的足迹并不可惜,迷失了继续前时的方向却很危险。‘,
            ‘奋斗者在汗水汇集的江河里,将事业之舟驶到了理想的彼岸。‘,
            ‘忙于采集的蜜蜂,无暇在人前高谈阔论。‘,
            ‘勇士搏出惊涛骇流而不沉沦,懦夫在风平浪静也会溺水。‘
        ];
        var num2=parseInt(Math.random()*19);
        $(".success>p").html(successarr[num2]);
        $(".shadow").css("height",$(window).height());
    }
    // 失败名言
    function fail(){
        var failarr=[
            ‘志在峰巅的攀登者,不会陶醉在沿途的某个脚印之中。‘,
            ‘海浪为劈风斩浪的航船饯行,为随波逐流的轻舟送葬。‘,
            ‘人生最重要的一点是,永远不要迷失自己。‘,
            ‘一个人承受孤独的能力有多大,他的能力就有多大。‘,
            ‘实力塑造性格,性格决定命运。‘,
            ‘普通人成功并非靠天赋,而是靠把寻常的天资发挥到不寻常的高度。‘,
            ‘对于强者,要关注他们的灵魂,对于弱者,他关注他们的生存。‘,
            ‘积极的人在每一次忧患中都看到一个机会,而消极的人则在每个机会都看到某种忧患。‘,
            ‘成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成。‘,
            ‘当你感到悲哀痛苦时,最好是去学些什么东西。学习会使你永远立于不败之地。‘,
            ‘有的人一生默默无闻,有的人一生轰轰烈烈,甚至千古流芳,为什么会这样?因为默默无闻的人只是满足于现状,而不去想怎么轰轰烈烈过一生,不要求自己,去做,去行动,怎么能够成功?‘,
            ‘人性最可怜的就是:我们总是梦想着天边的一座奇妙的玫瑰园,而不去欣赏今天就开在我们窗口的玫瑰。‘,
            ‘在人生的道路上,即使一切都失去了,只要一息尚存,你就没有丝毫理由绝望。因为失去的一切,又可能在新的层次上复得。‘,
            ‘没有一劳永逸的开始;也没有无法拯救的结束。人生中,你需要把握的是:该开始的,要义无反顾地开始;该结束的,就干净利落地结束。‘,
            ‘生命的奖赏远在旅途终点,而非起点附近。我不知道要走多少步才能达到目标,踏上第一千步的时候,仍然可能遭到失败。但我不会因此放弃,我会坚持不懈,直至成功!‘,
            ‘不要认为只要付出就一定会有回报,这是错误的。学会有效地工作,这是经营自己强项的重要课程。‘,
            ‘苦心人天不负,卧薪尝胆,三千越甲可吞吴。有志者事竞成,破釜沉舟,百二秦川终属楚。‘,
            ‘生命本身是一个过程,成功与失败只是人生过程中一些小小的片段,若果把生命与成功或失败联系在一起,生命将失去本身该有的意义。‘,
            ‘我们不要哀叹生活的不幸,诅咒命运的不公。在命运面前,我们要做强者,掐住命运的咽喉,叩问命运,改变命运。‘,
            ‘努力和效果之间,永远有这样一段距离。成功和失败的唯一区别是,你能不能坚持挺过这段无法估计的距离。‘
        ];
        var num3=parseInt(Math.random()*19);
        $(".fail>p").html(failarr[num3]);
        $(".fail").show();
    }



})

 

 

 

以上是关于jquery动画的主要内容,如果未能解决你的问题,请参考以下文章

十条jQuery代码片段助力Web开发效率提升

十条jQuery代码片段助力Web开发效率提升

在jquery中切换动画

VSCode自定义代码片段——CSS动画

VSCode自定义代码片段7——CSS动画

VSCode自定义代码片段7——CSS动画