0

0

jquery stop()方法有什么用

青灯夜游

青灯夜游

发布时间:2022-03-01 18:32:38

|

3178人浏览过

|

来源于php中文网

原创

在jquery中,stop()方法用于为被选元素停止当前正在运行的动画效果,语法“$(selector).stop(stopAll,goToEnd)”;参数stopAll和goToEnd都是可选参数,其取值都是布尔值,默认值都是false。

jquery stop()方法有什么用

本教程操作环境:windows7系统、jquery1.10.2版本、Dell G3电脑。

在jquery中,stop()方法用于为被选元素停止当前正在运行的动画效果。

语法:

$(selector).stop(stopAll,goToEnd)

stopAll 和 goToEnd 都是可选参数,它们的取值都是布尔值,默认值都是 false。stopAll 表示停止队列动画。当取值为 false 时,仅停止当前动画;当取值为 true 时,停止当前动画以及后面所有的队列动画。goToEnd 表示将动画跳转到当前动画效果的最终状态。

其中,stop() 方法共有 4 种形式,如表 1 所示。

表 1:stop() 方法的 4 种形式
形式 说明
stop() 等价于 stop(false, false),仅停止当前动画,后面的动画还可以继续执行
stop(true) 等价于 stop(true, false),停止当前动画,并且停止后面的动画
stop(true, true) 当前动画继续执行,只停止后面的动画
stop(false, true) 停止当前动画,跳到最后一个动画,并且执行最后一个动画

一般来说,在实际开发中我们只会用到 stop() 方法的第 1 个参数,很少用到第 2 个参数。

举例:




    
    
    
    
    
    


    
    

预览效果下图所示。

1.gif

在这个例子中,我们使用 animate() 方法定义了 4 个动画。我们点击【开始】按钮后,过了一会儿如果再点击【停止】按钮,就会立即停止当前执行的动画(也就是停止当前的 animate() 方法),然后跳到下一个动画(也就是下一个 animate() 方法)。

如果再次点击【停止】按钮,它又会跳到下一个动画,以此类推。小伙伴们可以自行测试来感受一下。

手机在线人工冲值
手机在线人工冲值

说明:我不知道这个系统还能用到什么地方!他的运作方式是这样的,客户在其他地方比如掏宝购买了 你得卡,然后在你的网站进行冲值,你得有人登陆并看着后台,如果有人冲值,就会刷出记录,手工冲值完毕后,你得点击 [冲值完毕],客户的页面 就会返回 冲值信息!安装:上传所有文件,倒入(sql.txt)mysql数据库,使用myphpadminphplib 777phplib/sys.php 777phplib

下载

如果想要停止所有的队列动画,可以通过定义 stop() 方法的第一个参数为 true 来实现,代码如下:

$("#btn-stop").click(function () {
    $("div").stop(true);
})

举例:




    
    
    
    
    


    

预览效果下图所示。

2.gif

在这个例子中,我们使用 hover() 方法定义鼠标指针移入和鼠标指针移出时的动画效果。当我们快速地移入或移出元素时,会发现一个很奇怪的 bug:元素会不断地变长或变短!也就是说,动画会不断执行,根本停不下来。

这种“根本停不下来”的 bug 在实际开发中经常会碰到,小伙伴们一定要特别注意。实际上,这个 bug 是由动画累积所导致的。在 jQuery 中,如果一个动画没有执行完,它就会被添加到“动画队列”中去。在这个例子中,每一次移入或移出元素,都会产生一个动画,如果该动画没有被执行完,它就会被添加到动画队列中去,然后没有被执行完的动画会继续执行,直到所有动画执行完毕。

针对这个 bug,我们只需要在移入或移出元素产生的动画执行之前加入 stop() 方法,就能轻松解决。最终修改后的代码如下。

$("div").hover(function () {
    $(this).stop().animate({ "height": "150px" }, 500);
}, function () {
    $(this).stop().animate({ "height": "50px" }, 500);    //移出时返回原状态
})

对于这种由于动画累积产生的 bug,我们还可以通过is(":animated")来判断当前的动画状态并解决。对于is(":animated")这种方式,之后会详细介绍。

实际上,jQuery 还有一个方法可以中断动画——finish()。这个方法与 stop(true,true) 方法效果类似,因为它会清除排队的动画并使当前动画跳到最终值。不过,与 stop(true,true) 不同的是,它会使所有排队的动画都跳到各自的最终值。finish() 方法用得不多,我们简单了解一下即可。

【推荐学习:jQuery视频教程web前端开发视频

相关文章

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

65

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

119

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

32

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

39

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

19

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

84

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

19

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

9

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

47

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
jQuery 教程
jQuery 教程

共42课时 | 4.4万人学习

HTML+CSS基础与实战
HTML+CSS基础与实战

共132课时 | 9.6万人学习

tp6+adminlte搭建通用后台
tp6+adminlte搭建通用后台

共39课时 | 5.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号