jquery 快速入门学习总结
jquery简介
    jquery 是一个免费,开源的javascript 库.
jquery作用
    方便完成web前端的工作,例如节点操作,元素操作,事件绑定,ajax操作,并且解决了大部分的兼容问题
jquery使用配置
   1.本地配置
1.1 下载jquery文件, www.jquery.com
1.2 引入,放在文件同目录
<script type="text/javascript" src="jquery.1.8.3.min.js"></script>
2.远程访问文件
<script src="http://www.xiaohigh.com/jquery.js"></script>
3.检测配置
alert($); $ 是jquery对象的简写 alert(jQuery);
   4.元素基本获取
     4.1 通过id查找元素 $('$id');
4.2 通过标签名或者元素获取 $('div');
     4.3 通过class属性获取 $('.class');
     4.4 逗号并列获取 $('$id,.class');
     4.5 空格层级获取 $('$id .class')    //中间有空格
   5.过滤获取
     5.1 获取第一个元素$('li:first')
    5.2 获取最后一个元素$('li:last')
    5.3 获取指定索引的元素 $('li:eq(5)') 或者 $('li').eq(5);
    5.4 获取包含指定文本的元素$('li:contains("国")')
    5.5 通过属性查找元素 $('input[name=username]') 通过单个属性名和属性值查找
      $('input[type=text][name=phone]') 通过多个属性名和属性值进行查找
   6.父子节点获取(重点)
6.1 获取所有的子元素$('ul').children()
    6.2 获取第一个子元素$('ul li:first-child')
    6.3 获取最后一个元素$('ul li:last-child')
    6.4 获取指定索引的元素$('ul li:nth-child(1)')
    6.5 获取下一个元素 $('#id').next()
    6.6 获取上一个元素$('#id').prev()
    6.7 获取父级元素$('#id').parent()
    6.8 获取先辈元素$('#id').parents('tr')  (重点)
     6.9 获取同辈元素$('#id').siblings()
    6.10 在父级元素中查找元素$('ul').find('.class')
   7.元素的操作
    7.1 attr()
    attr传两个参数的时候是设置,传一个的时候是获取
    可以对属性进行操作,例:<div id='dvs'></div>
    $('#dvs').attr('class','cur');  设置属性
    $('#dvs').attr('class');    获取属性
    7.2 removeAtrr()
    $('#dvs').removeAttr('src');  移除属性
   8.样式操作
    8.1 css()
     例:$('#divs').css('width','200px'); 设置css属性 在括号内可通过中括号进行多个属性设置
8.2 addclass()
     添加类样式   
8.3 removeClass()
     移除类样式
9.文本操作
    9.1 text()
$('#dvs').text('<a href="">汽车</a>'); 设置结果会包含a标签
9.2 html()
$('#dvs').html('<a href="">生活</a>');设置结果只有值(生活)
9.2 from元素的值操作
    值的获取和设置
    9.2.1 $(element).val() 获取
    9.2.2 $(element).val('牛') 设置
    9.3 其他
    9.3.1 相对于文档的偏移量 offset()
$('#dvs').offset().left
    9.3.2 获取元素相对于父级的偏移量 position()
$('#dvs').position()
    9.3.3 元素的滚动距离(既可以获取也可以设置)  scrollLeft() scrollTop()
9.3.4 宽度和高度
    width 获取可视区域的宽度 $(window).width()
          获取整个文档的宽度$('document').width()
          获取元素的宽 $('element').width()
height 获取可视区域的高度 $(window).height()
          获取整个文档的高度 $('document').height()
获取元素的宽 $('element').height()
     10 节点操作
    10.1 创建节点操作
    $('<div></div>')
    $('<div class='cur'><span>hello world</span></div>')
    10.2 插入节点
     10.2.1 内部尾部添加
    $(parent).append(newNode)
    newNode.appendTo(parent)
    10.2.2 内部头部添加
    $(parent).prepend(newNode)
$(newNode).prependTo(parent)
10.2.3 元素外部之后添加
$(element).after(newNode)
newNode.insertAfter(element)
10.2.4 元素外部之前添加
$(element).before(newNode)
newNode.insertBefore(element)
    10.3 删除节点
$(element).remove() 删除当前节点
$(element).empty() 清空节点
    10.4 替换节点
替换节点 $(element).replaceWith(newNode)
    10.5 克隆节点 
克隆节点 $(element).clone(true)
    10.6 包裹元素
包裹元素 $(element).wrap('<div></div>') 当前的元素被其他的元素包裹
$(element).unwrap() 解除包裹
11. 事件绑定
基本绑定
$(element).click(function(){})
$(element).dblclick(function(){})
加载完毕事件
$(document).ready(function(){}) //和onload一样
$(function(){})
方法绑定
$(element).bind('click',function(){})
$(element).unbind()
$(element).on('click', function(){})
动态绑定
$(element).live('click', function(){}) 可以多个同时绑定,点击之后同时出发一个函数
11.2 事件触发
$(element).trigger('click') //自动触发事件
11.3 阻止事件冒泡和默认行为
return false
11.4 获取当前鼠标的位置和按键
$(element).click(function(e){})
var cx = e.clientX
var cy = e.clientY
var px = e.pageX
var py = e.pageY
12 ajax
$.get('1.php',{a=100&b=200},function(data){})
$.post('1.php',{num=10&id=10},function(data){})
$.ajax({
url: '1.php', url请求的脚本
data: 'id=100&page=10', data发送的数据
dataType: 'json', dataType数据的类型
type: 'GET', type请求的类型 get或post
success: function(data){}, success成功的执行代码
error: function(){}, error失败的执行代码
timeout:3000, timeout 超时时间
async: false async是否异步
})
    重点:在php中的数组返回给javascript 读取
$arr = ['name'=>'世强','age'=>21,'height'=>'167cm'];
    $res=json_encode($arr);
    echo $res;
//get发送ajax
$.get('4.php',{a:100},function(data){
// console.log(data);
//第一种
//eval('var arr ='+data);
// console.log(data);
//第二种
//var arr = JSON.parse(data);
console.log(arr);
//第三种 json
}.json)
13特效
快速显示和隐藏
$(element).hide()
$(element).show()
滚动显示和隐藏
$(element).slideDown()
$(element).slideUp()
渐隐渐显
$(element).fadeIn()
$(element).fadeOut()
自定义动画
$(element).animate({},2000)
停止
$(element).stop()
延时
$(element).delay(2000)