2019-05-29jQuery动画及核心

动画

隐藏一个元素
无参数时,隐藏元素
speed:"slow","normal", "fast,表示从显示过渡到隐藏的速度,也可以直接写数字,1000代表1s。
function参数:在动画完成时执行的函数,每个元素执行一次。
easing参数:用来指定切换效果,默认是"swing",可用参数"linear"

综合应用,写一个点击显示/隐藏的小功能
  <div class="container">
    牛牛牛牛牛牛
  </div>
  <input type="button" value="点击">
......
  var flag = true;
  $("input").click(function(){
    if(flag){
      $(".container").hide(function(){
        console.log("隐藏了");
        flag = false;
      });
    } else {
      $(".container").show(function(){
        console.log("显示了");
        flag = true;
      });
    }
  });
//更简单的写法
  $("input").click(function(){
    $(".container").toggle();
  });

  $(".container").animate({
    width:500,
    height:"300px",
    marginLeft: "20%"
  },2000);

核心

小例子

一div里面现有内容"您好",我们需要改为"您好,中国。"请问怎么做?

  function test(){
    var div = $(".container");
    div.text(div.text() + ",中国!")
  }
  test();

这样就可以了。这样是直接定义了一个函数,而jQuery的插件机制是在原有的jQuery里边添加一些属于jQuery的函数,让jQuery对象可以直接调用它。那我们如何修改上面的函数呢?

  $.fn.extend({
    add:function(value){
      //有点类似于给对象里面的原型添加一个方法,因为是jQuery调用函数
      this.text(this.text() + value)
    }
  });
  $(".container").add(",中国!");

这里的this指向jQuery对象,注意this指向标签只存在于事件中
改成这样就可以了。可以将这种函数封装在一个js文件里边,在需要用到的时候引入(注意引入必须写在jQuery的引入后边)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 2,124评论 0 2
  • 隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性。但是通过css...
    老夫撩发少年狂阅读 1,186评论 0 2
  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 711评论 0 3
  • jQuery 安装 把 jQuery 添加到您的网页 如需使用 jQuery,您需要下载 jQuery 库(会在下...
    Clover园阅读 341评论 0 0
  • 看朋友圈各种刷屏 因为对摔跤无感 一直没有看 今晚心血来潮 和女儿一起看了这部口碑佳片 因为是印度的 我一直在给姑...
    兰花小姐阅读 255评论 0 0

友情链接更多精彩内容