jQuery-4.动画篇---上卷下拉效果

jQuery中下拉动画slideDown

对于隐藏的元素,在将其显示出来的过程中,可以对其进行一些变化的动画效果。之前学过了show方法,show方法在显示的过程中也可以有动画,但是.show()方法将会匹配元素的宽度,高度,以及不透明度,同时进行动画操作。这里将要学习一个新的显示方法slideDown方法

.slideDown():用滑动动画显示一个匹配元素

.slideDown()方法将给匹配元素的高度的动画,这会导致页面的下面部分滑下去,弥补了显示的方式

常见的操作,提供一个动画是时间,然后传递一个回调,用于知道动画是什么时候结束

.slideDown( [duration ] [, complete ] )

持续时间(duration)是以毫秒为单位的,数值越大,动画越慢,不是越快。字符串 ‘fast‘ 和 ‘slow‘ 分别代表200和600毫秒的延时。如果提供任何其他字符串,或者这个duration参数被省略,那么默认使用400 毫秒的延时。

具体使用:

$("ele").slideDown(1000, function() {
    //等待动画执行1秒后,执行别的动作....
});

注意事项:

  • 下拉动画是从无到有,所以一开始元素是需要先隐藏起来的,可以设置display:none
  • 如 果提供回调函数参数,callback会在动画完成的时候调用。将不同的动画串联在一起按顺序排列执行是非常有用的。这个回调函数不设置任何参数,但是 this会设成将要执行动画的那个DOM元素,如果多个元素一起做动画效果,那么要非常注意,回调函数会在每一个元素执行完动画后都执行一次,而不是这组 动画整体才执行一次

<h2>slideDown</h2>
    <div class="left">
        <h4>测试一</h4>
        <div id="a1">hide-show</div>
        <button>点击slideDown显示动画</button>
    </div>
        <script type="text/javascript">
        //点击button
        //执行3秒隐藏
        //执行3秒显示
        $("button:first").click(function() {
            $("#a1").slideDown(3000)
        });
        </script>
    <div class="right">
        <h4>测试二</h4>
        <div id="a2">hide-show</div>
        <button>点击slideDown执行回调</button>
    </div>
        <script type="text/javascript">
        //点击button
        //执行3秒隐藏
        //执行3秒显示
        $("button:last").click(function() {
            $("#a2").slideDown(3000,function(){
                alert(‘动画执行结束‘)
            })
        });
        </script>

jQuery中上卷动画slideUp

对于显示的元素,在将其隐藏的过程中,可以对其进行一些变化的动画效果。之前学过了hide方法,hide方法在显示的过程中也可以有动画,但 是.hide()方法将为匹配元素的宽度,高度,以及不透明度,同时进行动画操作。这里将要学习一个新的显示方法slideUp方法

最简单的使用:不带参数

$("elem").slideUp();

这个使用的含义就是:找到元素的高度,然后采用一个下滑动画让元素一直滑到隐藏,当高度为0的时候,也就是不可见的时,修改元素display 样式属性被设置为none。这样就能确保这个元素不会影响页面布局了

带参数:

.slideUp( [duration ] [, easing ] [, complete ] )

同样可以提供一个时间,然后可以使用一种过渡使用哪种缓动函数,jQuery默认就2种,可以通过下载插件支持。最后一个动画结束的回调方法。

因为动画是异步的,所以要在动画之后执行某些操作就必须要写到回调函数里面,这里要特别注意

<h2>slideUp</h2>    <div class="left">        <h4>测试一</h4>        <div id="a1"></div>        <button>点击slideUp隐藏动画</button>    </div>        <script type="text/javascript">        //点击button        //执行3秒隐藏        //执行3秒显示        $("button:first").click(function() {            $("#a1").slideUp(3000)        });        </script>    <div class="right">        <h4>测试二</h4>        <div id="a2"></div>        <button>点击slideUp执行回调</button>    </div>        <script type="text/javascript">        //点击button        //执行3秒隐藏        //执行3秒显示        $("button:last").click(function() {            $("#a2").slideUp(3000,function(){                alert(‘动画执行结束‘)            })        });        </script>

jQuery中上卷下拉切换slideToggle

slideDown与slideUp是一对相反的方法。需要对元素进行上下拉卷效果的切换,jQuery提供了一个便捷方法slideToggle用滑动动画显示或隐藏一个匹配元素

基本的操作:slideToggle();

这是最基本的操作,获取元素的高度,使这个元素的高度发生改变,从而让元素里的内容往下或往上滑。

提供参数:.slideToggle( [duration ] ,[ complete ] )

同样的提供了时间、还有动画结束的回调。在参数对应的时间内,元素会完成动画,然后出发回调函数

同时也提供了时间的快速定义,字符串 ‘fast‘ 和 ‘slow‘ 分别代表200和600毫秒的延时

slideToggle("fast") 
slideToggle("slow") 

注意:

  • display属性值保存在jQuery的数据缓存中,所以display可以方便以后可以恢复到其初始值
  • 当一个隐藏动画后,高度值达到0的时候,display 样式属性被设置为none,以确保该元素不再影响页面布局

<h2>slideToggle</h2>
    <div class="left">
        <div id="a1"></div>
        <button>点击slideToggle上下卷滚切换</button>
    </div>
        <script type="text/javascript">

$("button").click(function() {
            $("#a1").slideToggle(3000)
        });

</script>

时间: 2024-10-12 04:31:51

jQuery-4.动画篇---上卷下拉效果的相关文章

上卷下拉效果 (jQuery)

1jQuery中下拉动画slideDown 对于隐藏的元素,在将其显示出来的过程中,可以对其进行一些变化的动画效果.之前学过了show方法,show方法在显示的过程中也可以有动画,但是.show()方法将会匹配元素的宽度,高度,以及不透明度,同时进行动画操作.这里将要学习一个新的显示方法slideDown方法 .slideDown():用滑动动画显示一个匹配元素 .slideDown()方法将给匹配元素的高度的动画,这会导致页面的下面部分滑下去,弥补了显示的方式 常见的操作,提供一个动画是时间,

jQuery中动画animate(上)

jQuery中动画animate(上) 有些复杂的动画通过之前学到的几个动画函数是不能够实现,这时候就需要强大的animate方法了 操作一个元素执行3秒的淡入动画,对比一下2组动画设置的区别 $(elem).fadeOut(3000) $(elem).animate({ opacity:0 },3000) 显而易见,animate方法更加灵活了,可以精确的控制样式属性从而执行动画 语法: .animate( properties ,[ duration ], [ easing ], [ com

点击上拉下拉效果

html代码:<ul class="jLIst"> <li class="one clearfix"> <div class="left">08</div><div class="center">交易时间每天有几个小时?</div><div class="sj"></div> </li> <li

jQuery基础(动画篇 animate,显示隐藏,淡入淡出,下拉切换)

1.jQuery中隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性.但是通过css直接修改是静态的布局,如果在代码执行的时候,一般是通过js控制元素的style属性,这里jQuery提供了一个快捷的方法.hide()来达到这个效果   $elem.hide() 提供参数: .hide( options ) 当提供hide方法一个参数时,.hide()就会成为一个动画方法..hide()方法将会匹配元素的宽度,高度,以及不透明度,同时进行动画操作

jQuery-4.动画篇---自定义动画

jQuery中动画animate(上) 有些复杂的动画通过之前学到的几个动画函数是不能够实现,这时候就需要强大的animate方法了 操作一个元素执行3秒的淡入动画,对比一下2组动画设置的区别 $(elem).fadeOut(3000) $(elem).animate({ opacity:0 },3000) 显而易见,animate方法更加灵活了,可以精确的控制样式属性从而执行动画 语法: .animate( properties ,[ duration ], [ easing ], [ com

jq 筛选选择器,方法,隐式迭代 元素显示隐藏 淡入淡出 上拉下拉 动画 类名操作以及样式

jQuery 地址:https://jquery.com/ 历史版本:http://code.jquery.com/ 1.x:兼容 IE678 低版本浏览器 2.x:不兼容 IE678 低版本浏览器 3.x:不兼容 IE678 低版本浏览器,官方主要维护版本 入口函数 // 一下两种入口函数 相当于原生中的 DOMContentLoaded $(function () { /* DOM加载完成的入口*/ }) $(document).ready(function(){ /* DOM加载完成的入口

jQuery之动画效果show()......animate()

jQuery之动画效果 1.show()显示效果 语法:show(speed,callback) Number/String,Function speend为动画执行时间,单位为毫秒.也可以为slow","normal","fast" callback可选,为当动画完成时执行的函数.   show(speed,[easing],callback) Number/String easing默认是swing,可选linear; $("#div1&qu

ReactNative入门 —— 动画篇(上)

在不使用任何RN动画相关API的时候,我们会想到一种非常粗暴的方式来实现我们希望的动画效果——通过修改state来不断得改变视图上的样式. 我们来个简单的示例: var AwesomeProject = React.createClass({ getInitialState() { return { w: 200, h: 20 } }, _onPress() { //每按一次增加近30宽高 var count = 0; while(++count<30){ requestAnimationFra

jQuery-4.动画篇---淡入淡出效果

jQuery中淡出动画fadeOut 让元素在页面不可见,常用的办法就是通过设置样式的display:none.除此之外还可以一些类似的办法可以达到这个目的.这里要提一个透明度的方法,设置元素透明度为0,可以让元素不可见,透明度的参数是0~1之间的值,通过改变这个值可以让元素有一个透明度的效果.常见的淡入淡出动画正是这样的原理. fadeOut()函数用于隐藏所有匹配的元素,并带有淡出的过渡动画效果 所谓"淡出"隐藏的,元素是隐藏状态不对作任何改变,元素是可见的,则将其隐藏. .fad