jQuery的学习
1.Query概述
1.1、为什么使用 jQuery(JS遇到的问题)
a.选择器功能弱
b. DOM操作繁琐之极
c. 浏览器兼容性不好
d. 动画效果弱
1.2、什么是 jQuery(概念)
jQuery (javaScriptQuery)JavaScript代码库 ,js的封装
1.3、目前 jQuery有三个大版本:
1)1.x:兼容ie678,使用最为广泛的,官方只做BUG维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.4 (2016年5月20日)
2)2.x:不兼容ie678,很少有人使用,官方只做BUG维护,功能不再新增。如果不考虑兼容低版本的浏览器可以使用2.x,最终版本:2.2.4 (2016年5月20日)
3)3.x:不兼容ie678,只支持最新的浏览器。除非特殊要求,一般不会使用 3.x版本的,很多老的 jQuery插件不支持这
2、jQuery中$的含义
$(function):作用:
1 相当于 window.onload=function(){}
2.功能比window.onload更强大
1) window onload一个页面只能写一个,但是可以写多个$() 而不冲突
2) window onload要等整个页面加载完后再执行(包括图片、超链接、音视频等),但是$的执行时间要早
3.完整形式是$(document).ready(…….);
$(selector):作用
选择器 jQuery具有强大的选择器功能
JS与JQ的比较
3.选择器学习
3.1DOM对象与JQ对象的比较
获取对象的方式:
DOM:document.getelementbyId("id");
DOM:document.getelementbytagetName("标签名");
DOM:document.getelementbyName("name名");
标签选择器 JQ:$(“标签名”)
ID选择器 JQ:$("#id")
类选择器 $(“.class”) $(“h2.class”)
通配选择器 $("*")
3.2DOM与JQ之间的转换
DOM对象转换成jQuery对象 :$(DOM对象)
jQuery对象转换成DOM对象 :(1) jQuery对象[index] (2)jQuery对象.get(index)
代码:
3.3 JQ并集选择器$("elem1,elem2,elem3")
后代选择器$(ul li)
父子选择器 $(ul>li)
后面第一个兄弟元素 prev + next
后面所有的兄弟元素 prev ~ next
3.4JQ中基本选择器与子选择器
//只是第一行变颜色
$("ul li:first").css("background-color","red");
$("ul li").first().css("background-color","red");
//最后一行变颜色
$("ul li:last").css("background-color","green");
$("ul li").last().css("background-color","green")
//获得索引是奇数对象 索引从0开始
$("ul li:odd").css("background-color","green");
//获得索引是偶数对象 索引从0开始
$("ul li:even").css("background-color","green");
//获得索引下标位3的对象
$("ul li:eq(3)").css("background-color","green");
//获得大于指定索引下标的对象
$("ul li:gt(3)").css("background-color","green");
//获得小于指定索引下标的对象
$("ul li:lt(3)").css("background-color","green");
/**************子选择器*************************/
$("ul li:nth-child(1)").css("background-color","green");
$("ul li:first-child").css("background-color","darkred");
$("ul li:last-child").css("background-color","darkred");
$("ul li:only-child").css("background-color","#00A40C");
3.5JQ中属性选择器:
$("标签名【属性1=值1】【属性2=值2】]")
3.6JQ中表单选择器
获得form表单中的所有的表单项 :$(":input")
input标签 type属性等于text所对应的对象:$(":text")
获得input标签中含有disabled属性的对象 : $("input:disabled");
获得含有checked属性的对象 :$("input:checked");
代码:
4.操作页面的样式
4.1获取页面样式的两种方式
a.元素对象.css("属性","值");
元素对象.css{key1:value1,key2:value2}---json格式
b.如果当页面中的css样式比较多的时候可以通过添加类的 式添加样式,方法如下:两种
1)$("#id").attr("class","div");
2)("#id").addClass("div");