详解jQuery中基本的动画方法

发布时间 - 2026-01-10 21:48:58    点击率:

大致介绍

通过jQuery中基本的动画方法,能够轻松地为网页添加非常精彩的视觉效果,给用户一种全新的体验

jQuery中的动画

show()和hide()方法

1、show()方法和hide()方法是jQuery中最基本的方法,hide()方法会将一个元素的display设置为"none";

2、show()方法和hide()方法会同时改变元素的宽度、高度和透明度

3、在一个元素使用hide()方法时会记录原先的display属性,当调用show()方法的时候会根据hide()方法记住的display属性值来显示该元素

4、show()方法和hide()方法都能接受一个参数,表示运动的快慢

$('.div1').toggle(function(){
$('.div2').hide(600);
 },function(){
  $('.div2').show(600);
 });

fadeIn()方法和fadeOut()方法

1、fadeOut()方法在指定的一段时间内只降低元素的不透明度,而fadeIn()方法则相反

2、接受一个参数

 $('.div1').toggle(function(){
  $('.div2').fadeIn(600);
 },function(){
  $('.div2').fadeOut(600);
 });

slideUp()方法和slideDown()方法

 1、slideUp()方法和slideDown()方法只会改变元素的高度。如果一个元素的display属性值为"none",当调用slideDown()方法时,这个元素将由上至下延伸,slideUp()方法相反

 2、接受一个参数

 $('.div1').toggle(function(){
  $(this).next().slideUp();
 },function(){
  $(this).next().slideDown();
 });

自定义动画方法animate()

 语法:animate(params,speed,callback);

 (1)params:一个包含样式属性及值得映射

 (2)speed:速度参数,可选

 (3)callback:在动画完成时执行的函数,可选

1、基本用法

 $('.div1').click(function(){
  $('.div2').animate({width:'+=50px',height:'300px'},600);
 });

2、多重动画

如果要采用链式运动可以采用链式写法

 $('.div1').click(function(){
 $('.div2').animate({width:'350px'},600)
  .animate({height:'300px'},600);
 });

注意:如果采用链式写法时用了css()方法,css()方法不会添加到运动队列中,会直接执行而不等待前面的动画

 $('.div1').click(function(){
  $('.div2').animate({width:'350px'},600)
   .animate({height:'300px'},600)
   .css('border','10px solid black');
 });

这个元素的边框会在一开始就添加到了元素上,要解决这个问题的办法就是使用回调函数

如果要同时运动可将要运动的值写在一起

 $('.div1').click(function(){
 $('.div2').animate({width:'350px',height:'300px'},600);
 });

回调函数

回调函数适用与jQuery所有的动画效果方法

例如要解决链式写法css()属性会直接执行的问题可以采用回调函数的方法

 $('.div1').click(function(){
 $('.div2').animate({width:'350px'},600)
   .animate({height:'300px'},600,function(){
   $('.div2').css('border','10px solid black');
  });
 });

停止动画和判断是否处于动画状态

1、停止元素的动画

stop()方法接受两个参数

第一个参数为true或者false,表示是否要清空为执行完的动画队列,例如我们写链式动画时,如果第一个参数为true,当我们阻止了正在进行的一个动画操作后,后面的动画操作都会被清空,如果参数为false时,就只会阻止当前的这个动画,动画队列后的动画依旧执行

第二个参数为true或者false,表示是否要将正在执行的动画跳转到末状态

2、判断元素是否处于动画状态

如果用户频繁的执行一个animate()动画时,就会出现动画积累,解决方法就是判断元素是否正处于动画状态,如果元素不处于动画状态,才为元素添加新的动画

if(!$('div1').is(':animated')){
 // 添加动画
 }

3、延迟动画

如果要延迟执行一个动画,就可以使用delay()方法

 $('.div1').click(function(){
  $('.div2').animate({width:'350px'},600)
   .delay(1000)
   .animate({height:'300px'},600,function(){
    $('.div2').css('border','10px solid black');
   });
 });

其他动画方法

1、slideToggle()方法

通过高度的变化来切换匹配的元素的可见性

$('.div1').click(function(){
 $('.div2').slideToggle();
});

2、fadeTo()方法

可以把元素的不透明度以渐进的方式调整到指定的值,这个动画只调整元素的不透明度

 $('.div1').click(function(){
 $('.div2').fadeTo(600,0.5);
 });

3、fadeToggle()方法

通过不透明度来切换匹配元素的可见性

 $('.div1').click(function(){
 $('.div2').fadeTo(600,0.5);
 });

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# jquery  # 动画方法  # jQuery实现的背景颜色渐变动画效果示例  # jQuery之动画效果大全  # jQuery Ajax 加载数据时异步显示加载动画  # 原生js仿jquery animate动画效果  # jQuery实现图像旋转动画效果  # jQuery中使用animate自定义动画的方法  # 深入理解jquery自定义动画animate()  # jQuery实现点击水纹波动动画  # 基于jquery fly插件实现加入购物车抛物线动画效果  # 利用jquery制作滚动到指定位置触发动画  # jQuery动画效果图片轮播特效  # jQuery动画_动力节点节点Java学院整理  # 链式  # 明度  # 回调  # 不透  # 第一个  # 只会  # 可选  # 清空  # 就会  # 见性  # 都能  # 而不  # 时间内  # 第二个  # 自定义  # 当我们  # 要将  # 在一  # 设置为  # 将由 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何生成腾讯云建站专用兑换码?  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  如何在阿里云部署织梦网站?  如何快速搭建支持数据库操作的智能建站平台?  详解Oracle修改字段类型方法总结  Linux网络带宽限制_tc配置实践解析【教程】  Bootstrap整体框架之CSS12栅格系统  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  WEB开发之注册页面验证码倒计时代码的实现  如何基于云服务器快速搭建网站及云盘系统?  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  如何实现建站之星域名转发设置?  js实现点击每个li节点,都弹出其文本值及修改  深圳网站制作的公司有哪些,dido官方网站?  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  如何在不使用负向后查找的情况下匹配特定条件前的换行符  如何在阿里云虚拟服务器快速搭建网站?  晋江文学城电脑版官网 晋江文学城网页版直接进入  Laravel如何生成URL和重定向?(路由助手函数)  Laravel如何自定义错误页面(404, 500)?(代码示例)  如何破解联通资金短缺导致的基站建设难题?  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  如何用PHP工具快速搭建高效网站?  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  C语言设计一个闪闪的圣诞树  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  网站制作价目表怎么做,珍爱网婚介费用多少?  如何在阿里云香港服务器快速搭建网站?  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  如何快速搭建FTP站点实现文件共享?  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  如何快速生成可下载的建站源码工具?  如何为不同团队 ID 动态生成多个非值班状态按钮  JavaScript如何实现类型判断_typeof和instanceof有什么区别  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  Swift中循环语句中的转移语句 break 和 continue  如何做网站制作流程,*游戏网站怎么搭建?  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理