jquery基础知识

来源:互联网 发布:网络惩罚男朋友的招数 编辑:程序博客网 时间:2024/06/06 16:46
Jquery
------ Javascript的类库
一种封装好的Javascript的类库的集合,提供了很多方便快捷和强大的功能和效果
Jquery自动兼容各种浏览器


将Jquery的js文件引入到html文档中


Jquery官方网站上有两种
Jquery.x.x.x.js       ----  完整版    带有格式的jquery的源代码    
Jquery.x.x.x.min.js   ----  常用      没有格式的jquery的源代码    体积小


-----  1. 基础使用
核心(十分重要) ---  选择器(参照css的选择器来理解)


   三种核心选择器
   (1)  $("#haha")    ---   ID选择器
                获得html中ID是haha的元素的Jquery对象
   (2)  $(".xixi")    ---   类选择器
                获得html中使用了xixi样式的所有Jquery对象
   (3)  $("p")    ---  普通选择器
                获得html中所有的p标记的Jquery对象
       
   Jquery对象与Javascript原生的dom对象的区别


   其他的选择器
   (1)  组合选择器
          将多个核心选择器组装成层次结构
           $("#div1 input")  --- id是div1元素内的所有input标记 
           $("div input")    --- 所有div中的所有input标记




          $("div,span,p.myClass")   ,-- 匹配任一即可
                 匹配  div
                 匹配  span
                 匹配  使用了myClass样式的p


          $(".haha .hehe")   ---  使用了haha样式的元素内使用了hehe样式的所有标记
 $(".haha.hehe")   ---  同时使用了haha样式和hehe样式的所有标记
    (2)  属性选择器
          $("input[type=text]")   --  所有input标记且type属性为text的所有标记
 $("input[type!=text]")   --  所有input标记且type属性不为text的所有标记


 $("input[type^=t]")   --  所有input标记且type属性以t开始的所有标记
 $("input[type$=t]")   --  所有input标记且type属性以t结束的所有标记
     $("input[type*=t]")   --  所有input标记且type属性含有t的所有标记


          所有input标记checkbox,同时name是haha
          $("input[type=checkbox][name=haha]")




          $(":checkbox")   --- 所有的多选按钮
  $(":checkbox[name=haha]")


    (3)  序号选择器
  $("tr:even")   --- 偶数行  从0开始计
          $("tr:odd")   --- 奇数行  从0开始计  


           :eq(0)    ---第一行
           :gt(2)    ---大于第2行  从0开始
           :lt(2)    ---小于第2行  从0开始


    (4)  状态选择器
           :checked   -- 选中
           :selected   --  选中
           :enabled  -- 启用
           :disabled  -- 禁用




     控制显示与隐藏
         show()  --- 显示
         hide()  --- 隐藏
         toggle()  --- 智能的交替控制


         fadeIn    --- 淡入
         fadeOut   --- 淡出
         fadeToggle   ---  智能交替淡入淡出


         slideDown   ---  展开
         slideUp     ---  收起  
         slideToggle   ----  智能控制


     控制value值
          val()     --- 取值
          val(xxx)     --- 存值


     控制属性值
          attr("属性名")   --- 获得属性名对应的属性值
          attr("属性名","xxx")   --- 将某个属性的值设置成xxx


          prop("单属性", true)   --- 设置某单属性生效
          prop("单属性", false)   --- 设置某单属性失效


          单属性:不用属性值控制   常见:readonly,disabled,checked,selected


     控制css
 css("css属性名")    ----取得对应css样式属性的值
          css("css属性名","xxxxx")    ----将某css属性的值设置为xxxxx


          addClass("class名")   ----- 添加某class样式
          removeClass("class名")   ------ 移除某class样式
     控制内容
       html()               -------- 取得html代码
          html(xxxxxx)         -------- 设置html代码


          text()               --------  取得文本内容
          text(xxxxx)          --------  设置文本内容






     遍历
         each(function(){  //每一个元素应该做的事情  })


     事件处理
         除了支持常规的js调用方式外
         还支持事件绑定的方式


         为jquery对象绑定某种事件来完成调用


         ready事件(重要)  ---   dom准备完成事件:


    看起来是页面加载时自动调用
                                             在页面的文档DOM准备后即自动调用ready事件
   
         load事件    ---    相当于onload事件:页面加载时自动调用onload




         ready要早于load事件进行调用


         所有的事件绑定都要在ready或load事件中完成




          click(function (){});  单击事件
          blur(function (){});   失去焦点事件
          change(function (){});  值改变事件
          focus(function (){});  获得焦点事件


          hover(function(){}, function(){});  悬停事件  --- 复合事件




 submit(function (){});   表单提交事件
                return false;   ---拦截表单提交
                return true;   ---提交表单



-----  2. Ajax技术


    Ajax:异步通信机制
        体现:在不整体刷新网页的前提下,向服务器发送请求并得到请求结果
        效果:网页局部刷新
        应用:用户名重复检测    多级联动菜单       富客户端的应用




    Jquery中主要有三种方法来实现AJAX功能


        $.ajax    ---- 完整版


           JSON数据格式
      {person:{name:张三,age:22}}


                主要以键值对的形式存在    name 键key    :    张三  值 value


                {key1:value1,key2:value2,....keyn:valuen}
                          ----json对格式很敏感  错了一点都不行


                {cities:[{cname:沈阳},{cname:大连}]}






           XML数据格式
               <person>
  <name>张三</name>
                   <age>22</age>
               </person>




        $.ajax({特定的json格式});





        $.get ---  get请求方式的简化版       课后自己查阅API
        $.post ---  post请求方式的简化版     课后自己查阅API





        同步与异步


           默认是异步请求,Ajax执行期间,页面的js代码正常继续往下执行,不等待ajax的返回结果

           同步请求,Ajax执行期间,页面会锁定,所有的操作都会等待ajax执行后的结果





1 0
原创粉丝点击