zoukankan      html  css  js  c++  java
  • jquery动画效果中,避免持续反应用户的连续点击

     一、某些动画效果中,避免持续连续反应用户的连续点击(这标题真不好描述) 

      意思就是指用户点击速度很快,完成一次效果的时间不能很快结束的话,就会出现用户不点击了,效果还在持续。看下面例子就明白了,手风琴效果,短时间内多次点击的话,你就会发现问题了。(其实算是转载,在别人博客看到了,忘记是哪了)

     例子中的代码

    HTML:

    <div class="wrap">
        <p>click me</p>
        <div class='content'></div>
        <p>click me</p>
        <div class='content'></div>
        <p>click me</p>
        <div class='content'></div>
        <p>click me</p>
        <div class='content'></div>
        <p>click me</p>
        <div class='content'></div>
        <p>click me</p>
        <div class='content'></div>
        <p>click me</p>
        <div class='content'></div>
    </div>
    View Code

     CSS:

            .wrap{
                width: 40%;
                margin:0 auto;            
            }
            .content{
                height: 200px;
                background: #94D0D1;
                display: none;
                overflow: hidden;
            }
            p{
                height: 30px;
                line-height:30px;
                background: #62f1f4;
                cursor: pointer;
                border-bottom: 1px solid #eee;
                color: #777;
                font-size: 1.3em;
                margin: 0;
                padding: 0;
            }
            .dis{
                display: block;
            }
    View Code

     JS:

        $("p").mousedown(function(){        
                $(this).next("div").slideToggle();        
                $(this).next("div").siblings("div").slideUp();
        });

      解决办法:jquery中的:animated可匹配所有正在执行动画效果的元素,所有可以用.is(":animated")或.not(":animated")(此not用法错误,jquery中并没有)进行判断后再执行效果或直接只对非动画进行中的元素执行动画效果,如$("div:not(:animated)").animate({ left: "+=20" }, 1000);,当然也可以用于jquery其他定义好了的动画效果。 

    点此查看改善后的效果  

      $("p").mousedown(function(){
             $(this).next("div:not(:animated)").slideToggle();
         $(this).next("div:not(:animated)").siblings("div").slideUp();
        });

     (注:.stop()可停止所选元素上的动画效果,元素保持调用此句之前的状态。)

     

  • 相关阅读:
    2020年7月3日 查找算法 代码
    QList 和QStringList为空 at()的错误
    网络编程TCP
    02#2位带操作
    04#认识指针
    03#指针内存图//拓展大小端序
    02#循环控制+分支控制+goto标签//拓展3目运算符和逗号运算符
    01#c语言基础内容
    输入的竖线变横
    Keil打包工程
  • 原文地址:https://www.cnblogs.com/yigeqi/p/3522491.html
Copyright © 2011-2022 走看看