jQuery之动画操作

显隐动画

show方法和hide方法:

$(selector).show(speed,callback)

  • speed,显示的速度,可选值为毫秒、"slow"、"normal"、 "fast"
  • callback,函数执行完后,要执行的函数
for(var i=0;i<5;i++){
    $("body").append("<div><div>")
}
$("div").click(function(){
    $(this).hide()
})
$("body").append("<button>show</button>")
$("button").click(function(){
    $("div").show()
})

显隐切换

在jQuery1.9之后,删除了toggle函数,但是我们可以用一种间接的方法实现同样的效果

var state=1
$("#button1").click(function(){
    state=!state
    if(state){
        $("p").show()
    }
    else{
        $("p").hide()
    }
})

滑动效果

slideDown和slideUp方法:

slideDown([speed],[callback]) 缓慢舒展

slideUp([speed],[callback])缓慢收缩

参数说明:

  • speed,速度
  • 执行完后要执行的函数
var slideState=1
$("#slide").click(function(){
    slideState=!slideState
    if(slideState){
        $("img").slideUp(2000);
    }
    else{
        $("img").slideDown(2000)
    }
})

使用callback:

$("img").slideUp(2000,function(){
    $(this).remove()
})

渐变效果

fadeIn和fadeOut方法:

fadeIn([speed],[callback])

fadeOut([speed],[callback])

//fadeIn
var fadeState=1
$("#fadeIn").click(function(){
    fadeState=!fadeState
    if (fadeState) {
        $("img").fadeIn(2000)
    }
    else{
        $("img").fadeOut(2000)
    }
})

淡出的透明效果fadeTo:

fadeTo([speed],opacity,[callback])

$("img").fadeTo(1000,0.5)

渐变切换fadeToggle方法:

$("img").fadeToggle(2000)

复杂动画

animate方法:

animate(style,[speed],[eading],[callback])

$("#animate").click(function(){
    $("img").animate({
        width:"100px",
        height:"200px",
    },3000)
    $("img").animate({
        width:"300px",
        height:"400px"
    },3000,function(){
        $("#animate").click()
    })
})

用animate实现定位:

        $("#position").click(function(){
                $("img").animate({
                    left:300,
                    top:0
                },2000)
                $("img").animate({
                    left:300,
                    top:300
                },2000)
                $("img").animate({
                    left:0,
                    top:300
                },2000)
                $("img").animate({
                    left:0,
                    top:0
                },2000,function(){
                    $("#position").click()
                })
            })

stop停止动画,off关闭动画

动画队列

            $("img").queue("fa",function(){
                    $("img").animate({
                    left:300,
                    top:0
                },2000)
                $("img").animate({
                    left:300,
                    top:300
                },2000)
                $("img").animate({
                    left:0,
                    top:300
                },2000)
                $("img").animate({
                    left:0,
                    top:0
                },2000,function(){
                    //$("#queue").click()
                    $("#updateQueue").click()
                })
                
            })
            $("#queue").click(function(){
                $("img").animate({
                    left:300,
                    top:300
                },2000)
                $("img").animate({
                    left:0,
                    top:0
                    },2000,function(){
                        $("#queue").click()
                    })
                })
            
            $("#updateQueue").click(function(){   //将默认的队列fx替换为自定义的fa
                var fa=$("img").queue("fa")
                $("img").queue("fx",fa)
            })

使用dequeue()方法删除队列的最顶部的函数:

$("#dequeue").click(function(){
    $("img").dequeue()
})
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 3,848评论 0 3
  • jQuery 安装 把 jQuery 添加到您的网页 如需使用 jQuery,您需要下载 jQuery 库(会在下...
    Clover园阅读 2,361评论 0 0
  • 警告请使用 document.write() 仅仅向文档输出写内容。如果在文档已完成加载后执行 document....
    鹿守心畔光阅读 7,797评论 3 104
  • 这几天,中国正处于“两会时间”。3月3日起,全国政协和全国人大将分别开幕,会议将一直持续到3月15日。在会议期间,...
    55kh阅读 2,415评论 0 2
  • 1.从本篇文章中我学到的重要概念:父母 爱和回忆 都是生命中不可缺少的 2.我在本篇文章中学到的怦然心动的单词:p...
    17数412苏磊阅读 1,274评论 0 1