zoukankan      html  css  js  c++  java
  • jQuery基础知识

    什么是jQuery,有什么特点,有什么好处


    jQuery是一个js文件,它是一个JavaScript框架或脚本库。

    特点是,将一些原始js脚本封装。利用选择器查找要操作的节点,并且将这些节点封装成jQuery对象,只需要调用jQuery对象的方法或者属性,就可以实现对节点的操作。

    这样做的好处是:可以兼容不同的浏览器(解决了大部分的兼容性问题),另外,代码也得到简化。便于脚本开发。类似jQuery框架很多,例如prototype,ExtJs,yahoo,等都是JavaScript框架。

    jQuery编程的基本步骤


    1. 利用选择器查找要操作的节点。 var $obj=$(‘#d1’);

    2. 调用jQuery对象的方法或者属性。 $obj.css(‘color’,’red’);

    jQuery对象


    什么是jQuery对象

    利用jQuery选择器选出的对象才是jQuery对象。jQuery对象是一个集合,集合元素是原有js中DOM对象。注意:只有jQuery对象才可以使用jQuery提供的函数

    对象类型的转换

    1. 将一个DOM对象转换成jQuery对象  $(DOM对象)

    //原始js实现
    function f1(){
      var a1=document.getElementById("a1");
      alert(a1.innerHTML);
      var $a1=$(a1);//将dom a1对象转换成jQuery对象
      alert($a1.html());
    }

    2. 将一个jQuery对象转换成DOM对象

    获取jQuery对象集合中的第一个DOM对象,jQuery对象[0] 或者jQuery对象.get(0)

    //jQuery实现
    function f2(){
      //获取id=a1的HTML元素
      var a1=$("#a1");//利用id选择器选择$("#id值")
      //获取a1中的html文本
      alert(a1.html());//利用html()函数获取信息
      //将jQuery对象转换成DOM对象
      alert(a1[0].innerHTML);//a1[0] dom对象
      //a1.get(0) jQuery函数,得到第一个元素 是DOM对象
      alert(a1.get(0).innerHTML);
    }

    3. 将一个字符串转换成jQuery对象   $(字符串)

    function f3(){
        var opt='<option value="1">北京</option>';
         var $opt=$(opt);//将一个字符串转换成jQuery对象
        alert($opt.html());
    }

    页面载入完毕执行指定函数fn

    $(document).ready(function(){}); 或者 $(function(){});

    //页面载入完毕后执行alert(),等价于onload事件
    $(document).ready(function(){
        alert($("#a1").html());
    });    
     //更简洁写法  在页面载入完毕后执行
    $(function(){
        alert($("#a1").html());
    })

    jQuery选择器(参考文档)


    什么是选择器?

    jQuery借鉴了css选择器的语法,用来方便地查找要操作的节点。

    基本选择器

    1. 按id属性值选择    $("#id值")

    2. 按class属性值选择 $(".class值")

    3. 按元素名称选择    $("元素名称")

    4. 选取所有元素      $(“*”)

    5. 选取多个元素,用逗号隔开选择器  $("#c1,#c2")//选取id=c1和id=c2的元素

    层级选择器

    1. 父子关系           $("选择器1>选择器2")“>”代表父子关系

    2. 祖先后代关系       $("选择器1 选择器2") ()

    3. 前后关系           $("pre+next");(pre next紧挨着)

    4. 兄弟关系(平级关系)  $("pre ~ siblings")

    简单选择器

    1. 选第一个      :first

    2. 选最后一个    :last

    3. 选基数元素    :even

    4. 选偶数元素    :odd

    5. 选指定元素    :eq(索引)

    6. 选大于指定值的元素  :gt(索引)

    7. 选小于指定值的元素  :lt(索引)//索引值从0开始

    内容选择器

    1. 根据指定文本信息选择          :contains(text);

    2. 匹配没有子元素或者文本为空    :empty

    可见性选择器

    1. 选择不可见元素     :hidden  (input的type是hidden的,样式diplay:none的)

    2. 选择可见元素       :visible

    属性选择器

    按属性值做条件选择   [属性名=属性值]

    表单元素选择器

    1. 选择所有表单元素,例如text,textarea,select    :input

    2. 选择type="text"类型的输入框     :text

    3. 选择type="checkbox"类型元素     :checkbox

    4. 其他:password,:hidden,:radio,:button,:image,:file

    表单对象属性选择器

    1. 选择可用表单元素                  :enabled

    2. 选择不可用表单元素               :disabled            <input type=”text” disabled=”disabled”/>

    3. 选择被选中的checkbox,radio   :checked           <input type=”checkbox”  checked=”checked”/>

    4. 选择被选中的select的option    :selected    <option value=”2” selected=”selected”>fdfgsgd<option/>

    jQuerydom操作


    1. 查询节点;$(“选择器”);  找到一个节点以后,可以通过四个方法来访问节点的html内容、文件内容、属性值、值。  html()       text()          attr()          val()

    2. 创建节点;$(html);

    3. 插入节点;append();作为最后一个孩子追加

    jQuery属性和样式函数


    属性函数

    1. 属性操作  

    attr(属性名);//返回属性值  
    attr(属性名,属性值);//设置属性名=属性值

    2. value属性操作  

    val();//返回value属性值  
    val(值);//设置value=值

    3. 获取div或span等元素文本信息操作 (纯文本(即字符串))  

    text();//返回元素中的文本内容    相当于属性innerText  
    text(值);//设置元素中的文本内容

    4. 获取和设置div等元素的信息,内容当作HTML信息处理

    html();//相当于属性innerHTML
    html(值);

    5. class属性操作

    addClass(值);//设置元素class="值"
    removeClass(值);//删除class属性中的值
    addClass(值);//设置元素class="值"
    removeClass(值);//删除class属性中的值

    css样式函数

    1. css样式控制

    css(样式属性)://获取样式属性的值
    css(样式属性,值);//设置样式属性值

    2. 宽和高的控制

    width();//获取元素的宽
    width(值);//设置元素的宽度
    height();//获取元素的高
    height();//设置元素的高度

    jQuery事件函数


    1. 页面载入

     $(document).ready(function(){}) 或 $(function(){})

    2. 基本事件

    click();//触发单击事件,执行单击事件
    click(fn);//为元素绑定一个单击处理
    focus();//获取焦点
    focus(fn);
    blur();//失去焦点
    blur(fn);
    change();//选项改变  用于select中option选项改变时发生该事件
    change(fn);
    unload(fn);//设置浏览器卸载页面前执行
    mouseover();//鼠标移上去
    mouseover(fn);
    mouseout();//鼠标移开
    mouseout(fn);

    3. 事件切换函数

    hover(over,out);//鼠标移上去和移开两个事件,移上去执行over函数,移开执行out函数
    toggle(f1,f2,f3....);//为一个元素绑定多个不同的单击处理事件,每次单击调用不同的fn

    4. 事件处理函数

    a.bind("事件类型",fn);为元素绑定指定类型的事件处理事件

    $("#btn1").click(fn);
    $("#btn1").bind("click",fn);

    b.unbind("事件类型");为元素取消绑定的处理函数

    $("#btn1").unbind("click");//取消click事件
    $("#btn1").unbind();//取消绑定的所有事件

    c.trigger("事件类型"); 触发元素绑定的事件处理

    $("#btn1").click();
    $("#btn1").trigger("click");

    d.live("事件类型",fn); 为现有和将来动态添加的元素绑定指定类型的事件

    文档处理


    1. 创建文档对象  $("字符串")

    2. 将文档对象添加到页面

    append(对象);//将对象值插入到元素内部末尾处
    prepend(对象);//将对象值插入到元素内部的前面
    after(对象);//将对象值插入到元素后面 作为兄弟
    before(对象);//将对象值插入到元素前面

    3. 将文档元素删除

    empty();//将元素内容清空
    remove();//将元素删除

    4. 将文档元素复制

    clone();//复制元素
    clone(true);//深度复制,可以将关联时间复制

    5. 将文档元素利用新元素包裹起来

     wrap(html);//利用指定的元素将文档元素包裹起来

    6. 将文档元素替换

    replaceWith(html);//利用html元素替换原有的

    特效函数


    主要实现隐藏和显示功能.

    1. 基本效果

    show();//将元素显示
    show(speed);//在指定speed时间内完成显示.speed:参数值可以'slow','normal','fast'也可以使用数字1000,2000(毫秒) 
    hide();//将元素隐藏  
    hide(speed);在指定时间内隐藏
    toggle();//切换隐藏和显示.

    2. 滑动效果(改变元素高)

    slideDown(speed);//将元素显示
    slideUp(speed);//将元素隐藏

    3. 淡入淡出效果(改变元素的透明度)

    fadeIn(speed);//将元素显示
    fadeOut(speed); //将元素隐藏

    4. 自定义动画:animate();

    筛选函数


    基于现有jQuery元素对象查找其他元素.

    1. 过滤

    a.eq(索引);//获取jQuery对象集合中某一个元素
    not(选择器);//从jQuery对象集合中将符合选择器的元素排除返回剩下的元素.
    is(选择器);//从jQuery对象集合中获取符合选择器的元素
    slice(begin,[end]);//从jQuery对象集合中获取begin-end的子元素      

    2. 查找

    find(选择器);// 从当前jQuery集合中将符合选择器的后代元素返回.
    children(选择器);// 从当前jQuery集合中将符合选择器的子元素返回
    parent();//获取当前jQuery对象的父元素
    siblings();//获取当前jQuery对象的兄弟

    工具函数

    $.trim(str);//字符串过滤空格,只过滤前后空格
    $.each(集合,fn);// 循环操作,每一个元素触发fn处理

    JQueryajax编程的支持


    load    

    作用:向服务器发送异步请求,并且将服务器返回的数据直接添加到符合要求的节点之上。

    语法:load( url, [data], [callback] )

    url:地址。

    data:请求参数,请求参数有两种形式:第一种:请求字符串  比如 "flight=ca1234&dest=bj"。  第二种:对象  比如: {'flight':'ca1234','dest':'bj'}

    callback:可选参数;是指调用load方法并得到服务器响应后,再执行的另外一个函数。

    load方法如果没有请求参数,会发送get请求,如果有请求参数,则会发送post请求。

    案例:在load方法得到服务器响应后,慢慢地显示加载的内容,就可以使用callback函数。

    $("#myID").load(
        "welcome.php",
         {"lname" : "Cai", "fname" : "Adam"},
        function(){
            $("#myID").fadeIn('slow');}
        );
    });                    

    $.get   

    作用:向服务器发送异步请求,请求方式是get方式。

    语法:$.get(请求地址,[data],[callback],[type]);

    data:请求参数

    callback:用来处理服务器返回的数据,格式:function(data,statusText),其中,data是服务器返回的数据,statusText是一个状态描述。

    type:服务器返回的数据类型,可以是:  text : 普通的文本  html :  html文档  json :   json字符串  xml :   xml文档  script: javascript脚本

    $.post

    用法同$.get,只不过发送的是post请求。传递多个参数值:$.post('url',{参数1:'值1',参数2:'值2'},回调函数)

    $.ajax            

    语法:$.ajax({'':'','':''});属性名用来设订一些选项:

    url: 请求地址

    type: 请求方式(get post)

    data: 请求参数

    dataType: 服务器返回的数据类型(text,html,json,xml,script)

    success: 成功以后调用的函数:function(data,statusText),其中,data是服务器返回的数据,statusText是一个状态描述。

    error:失败以后调用的函数:function(xhr,status,errorThrown),其中,xhr表示XMLHttpRequest对象,status,errorThrown其中有一个可以获得错误信息。

    async: 当值为true(缺省值),表示发送异步请求。当值为false,表示发送同步请求。

  • 相关阅读:
    URAL 2067 Friends and Berries (推理,数学)
    URAL 2070 Interesting Numbers (找规律)
    URAL 2073 Log Files (模拟)
    URAL 2069 Hard Rock (最短路)
    URAL 2068 Game of Nuts (博弈)
    URAL 2066 Simple Expression (水题,暴力)
    URAL 2065 Different Sums (找规律)
    UVa 1640 The Counting Problem (数学,区间计数)
    UVa 1630 Folding (区间DP)
    UVa 1629 Cake slicing (记忆化搜索)
  • 原文地址:https://www.cnblogs.com/qin-derella/p/6747558.html
Copyright © 2011-2022 走看看