美文网首页
jQuery 基础

jQuery 基础

作者: 命题_1f6e | 来源:发表于2019-07-11 15:35 被阅读0次

    jQuery

    jQuery操作DOM

    jQuery的选择器

    • 基本选择器
    • 层级选择器
    • 过滤选择器

    jQuery操作样式

    • css操作

      //name:需要设置的样式名称
      //value:对应的样式值
      css(name, value);
      //使用案例
      $("#one").css("background","gray");//将背景色修改为灰色
      -------------设置多个样式----------------
      $("#one").css({
          "background":"gray",
          "width":"400px",
          "height":"200px"
      });
      
    • class操作

      // 添加类名
      $(“div”).addClass(“one”);
      
      // 不带参数,移除所有的样式类 removeClass()
      $(“div”).removeClass();
      
      // 移除单个样式类
      $(“div”).removeClass(“one”);
      
      // 判断是否有样式类 判断第一个div是否有one的样式类
      $(“div”).hasClass(“one”);
      
      // 切换样式类:需要切换的样式类名,如果有,移除该样式,如果没有,添加该样式。
      $(“div”).toggleClass(“one”);
      
      

    jQuery动画

    • 显示与隐藏:显示(show)与隐藏(hide)是一组动画

      show([speed], [callback]); 
      //speed(可选):动画的执行时间
      //callback(可选):执行完动画后执行的回调函数
      
    • 滑入滑出:滑入(slideUp)与滑出(slideDown)是一组动画,效果与卷帘门类似

      slideUp(speed, callback);
      //speed(可选):动画的执行时间 默认为normal(400)
      //callback(可选):执行完动画后执行的回调函数
      
      滑入滑出切换
      //如果是隐藏状态,那么执行slideDown操作,如果是显示状态,那么执行slideUp操作。
      $(selector).slideToggle(speed,callback);
      
    • 淡入与淡出:fadeIn/fadeOut 用法如上

    注意

    1. jQuery给我们提供了三组动画,show/hide、slideUp/slideDown、fadeIn/fadeOut

    2. 动画切换方法:slideToggle、fadeToggle,注意:show和hide没有切换的方法。

    自定义动画

    animate:自定义动画

    $(selector).animate({params},[speed],[callback]);
    // {params}:要执行动画的CSS属性,带数字(必选)
    // speed:执行动画时长(可选)
    // callback:动画执行完后立即执行的回调函数(可选)
    

    节点的创建,增删查改

    • 创建节点$(htmlStr) 返回jQuery对象eg:$(“<span>这是一个span元素</span>”);

    • 添加节点:

      var $span = $(“<span>这是一个span元素</span>”);
      $(“div”).append($span);
      
      使用html方法创建元素
      //设置内容
      $(“div”).html(“<span>这是一段内容</span>”);
      //获取内容
      $(“div”).html()
      
    • 清空元素

      $(“div”).empty();//清空div的所有内容
      
    • 删除元素

      $(“div”).remove();
      
    • 克隆元素

      $(“div”).clone()  :深度复制
      $(“div”).clone(true):  事件也能复制
      

    jQuery操作DOM

    • jQuery操作属性

      //设置单个属性
      $(“img”).attr(“title”,”哎哟,不错哦”);
      //设置多个属性
      $("img").attr({
          title:"哎哟,不错哦",
          alt:"哎哟,不错哦",
          style:"opacity:.5"
      });
      //获取属性    
      var oTitle = $("img").attr("title");
      alert(oTitle);
      // 移除属性
      $("img").removeAttr("title");
      
    • jQuery操作值与内容

      val(value)方法用于设置和获取表单元素的值,例如input、select、textarea的值
      $(“#name”).val(“张三”);
      //获取值
      $(“#name”).val();
      
      html方法
      //设置内容
      $(“div”).html(“<span>这是一段内容</span>”);
      //获取内容
      $(“div”).html()
      
      text方法
      //设置内容
      $(“div”).text(“<span>这是一段内容</span>”);
      //获取内容
      $(“div”).text()
      
      html方法与text方法的区别:html方法会识别html标签,text方法会那内容直接当成字符串,并不会识别html标签。
      
    • jQuery操作尺寸

      //带参数表示设置高度
      $(“img”).height(200);
      //不带参数获取高度
      $(“img”).height();
      //带参数表示设置宽度
      $(“img”).width(200);
      //不带参数获取宽度
      $(“img”).width();
      

    jQuery事件机制

    JavaScript中已经学习过了事件,但是jQuery对JavaScript事件进行了封装,增加并扩展了事件处理机制。jQuery不仅提供了更加优雅的事件处理语法,而且极大的增强了事件的处理能力。

    简单事件绑定>>bind事件绑定>>delegate事件绑定>>on事件绑定(推荐)

    $(selector).on(events[,selector][,data],handler);
    // 第一个参数:events,绑定事件的名称可以是由空格分隔的多个事件(标准事件或者自定义事件)
    // 第二个参数:selector, 执行事件的后代元素(可选),如果没有后代元素,那么事件将有自己执行。
    // 第三个参数:data,传递给处理函数的数据,事件触发的时候通过event.data来使用(不常使用)
    // 第四个参数:handler,事件处理函数
    
    例子:
    // 表示给$(selector)绑定事件,当必须是它的内部元素span才能执行这个事件,支持动态绑定
    $(selector).on( "click",“span”, function() {});
    // 表示给$(selector)绑定事件,并且由自己执行,不支持动态绑定。
    $(selector).on( "click", function() {});
    

    事件解绑

    // 解绑匹配元素的所有事件
    $(selector).off();
    // 解绑匹配元素的所有click事件
    $(selector).off(“click”);
    // 解绑所有代理的click事件,元素本身的事件不会被解绑 
    $(selector).off( “click”, “**” ); 
    

    事件触发

    $(selector).click(); //触发 click事件
    or
    $(selector).trigger(“click”);
    

    jQuery 链式编程

    链式编程原理:return this;

    通常情况下,只有设置操作才能把链式编程延续下去。因为获取操作的时候,会返回获取到的相应的值,无法返回 this。

    end(); // 结束当前链最近的一次过滤操作,并且返回匹配元素之前的状态。

    jQuery 隐式迭代

    隐式迭代的意思是:在方法的内部会为匹配到的所有元素进行循环遍历,执行相应的方法;而不用我们再进行循环,简化我们的操作,方便我们调用。

    如果获取的是多元素的值,大部分情况下返回的是第一个元素的值。

    jQuery插件使用

    相关文章

      网友评论

          本文标题:jQuery 基础

          本文链接:https://www.haomeiwen.com/subject/puddkctx.html