jquery学习笔记韩顺平.docx
- 文档编号:30129908
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:27
- 大小:26.73KB
jquery学习笔记韩顺平.docx
《jquery学习笔记韩顺平.docx》由会员分享,可在线阅读,更多相关《jquery学习笔记韩顺平.docx(27页珍藏版)》请在冰豆网上搜索。
jquery学习笔记韩顺平
1,Jquery是一个javascript框架或者叫做javascript库;
2,用Ajax我们可以给服务器发送一个请求,服务器可以给我回送一个请求;
3,出现javascript框架的根本原因就是为了提高开发者的开发效率;
4,jquery是一个轻量级的js库(压缩后只有21K),这是其他的js库所不及的,它兼容CSS3,还兼容各种浏览器;
5,JQuery是一个快速的,简洁的javascript库,使用户能更方便的处理HTMLdocument,events,实现动画效果,并且方便的为网站提供AJAX交互;
6,JQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。
7,jquery能够使用户的html页保持代码和html内容的分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可;
8,所谓的库就是提供一些现成的方法供你去调用;
9,当前流行的javascript库有:
Jquery,MooTools,Prototype,Dojo,YUI,EXTJS,DWR[主要是运行在服务器上的];
10,$(document)//---这个表示一个jquery对象;
11,如果使用jquery,则需要引入jquery库
12,jquery对象就是对dom对象的一系列包装,它包装完成后,就可以使用jquery对象提供的方法来进行操作;
13,在使用jquery开发中,有两种对象,1,jquery对象,2,dom对象,如果是jquery对象则只能使用jquery库提供的方法,如果是dom对象,则只能使用js本身提供的方法;
14,分析jquery库文件的运行原理:
functionDog(){
}
//给Dog类添加一些属性和方法:
我们用原型法
Dog.prototype={
ready:
function(){
window.alert('ok');
},
jquery:
'1.3.1'//这里jquery是Dog类的一个属性
}
vardog1=newDog();
dog1.ready();//在界面上打出ok
window.alert(dog1.jquery);//在界面上打印出1.3.1
15,因为jquery兼容各大浏览器,所以这就是为什么它这么流行;
16,jquery对象就是通过jQuery包装DOM对象后产生的对象。
jquery对象时jQuery独有的,如果一个对象是jquery对象,那么它就可以使用jquery里的方法:
$("#test").html();
比如:
$("#test").html()意思是指:
获取ID为test的元素内的html代码。
其中html()是jquery里的方法;这段代码等同于用DOM实现代码:
document.getElementById("id").innerHTML;
虽然jquery对象时包装DOM对象后产生的,但是Jquery无法使用DOM对象的任何方法,同理DOM对象也不能使用Jquery里的方法,乱使用会报错;
约定:
如果获取的是jquery对象,那么要在变量前面加上¥,
var$variable=jquery对象
varvariable=DOM对象
17,如果是jquery对象,规定一个jquery对象名是以$开头
第二讲:
jqueryid选择器层次选择器
1,dom对象和jquery对象之间的转换:
(一)dom->jquery
var$obj3=$(obj1);
window.alert($obj3.val());
(二)jquery->dom有两种方法
(1),varobj4=$obj2[0];//obj4就是dom对象
alert("obj4value="+obj4.value);
(2),varobj5=$obj2.get(0);
alert("obj5val="+obj5.value);
2,jquery对象就是对dom对象进行包装,这样就可以使用jquery的方法;
3,jquery对象和dom对象可以互相转换;
4,事件;
5,document.getElementById("one").style.background='#0000FF';
jquery的id选择器去和按钮绑定一个事件
$('#b1')表示选中b1这个控件
$('#b1').click给b1这个按钮绑定click事件,
例子:
$('#b1').click(function(){
$('#one').css("background","#0000FF");
});
6,改变所有的元素和id为two的元素的背景色为#3399FF
$('#b5').click(
function(){
$('span,#two').css("background","#3399FF");
//这里面可以写好多条件,例如:
$('span,#two,mini,*').css("background","#3399FF");
}
)
7,经典实例:
$('p').click(
//this表示当前被点击的对象,但是这里this表示dom对象
window.alert(this.innerHTML);
//$(this)表示当前被点击的元素,但是此时我们当做jquery对象
window.alert($(this).html());
//以上两句的功能是等价的
);
8,如果想通过DOM元素之间的层次关系来获取特定元素,例如后代元素,子元素,相邻元素,兄弟元素等,则需要使用层次选择器;用法:
parent>child
用法:
$("form>input"):
返回值:
结合元素
说明:
在给定的父元素下匹配所有子元素,注意:
要区分好后代元素和子元素;
9,改变id为one的相邻的下一个
$('#b3').click(function(){
$('#one+div').css("background","#0000FF");
})
10,改变id为two的元素后面的所有兄弟
第三讲:
jquery过滤选择器及练习题讲解
1,层次选择器:
(1),prev+next表示选择prev的下一个元素(强调:
同一级)
(2),prev~siblings表示选择Prev的后面的所有元素(强调:
同一级)
例子:
$('#b3').click(function(){
$('#one*div').css("background","#0000FF");
})
$('#b4').click(function(){
$('#two~div').css("background","#0000FF");
})
2,过滤选择器主要是通过特定的过滤规则来筛选出所需的DOM元素,该选择器都已":
"开头;按照不同的过滤规则,过滤选择器可以分为基本过滤,内容过滤,可见性过滤,属性过滤,子元素过滤和表单对象属性过滤选择器;
3,例如:
$('#b1').click(function(){
$('div:
first').css("background","#0000FF");
//表示先找到第一个div标签,然后选择第一个div标签
});
4,//改变class不为one的所有div元素的背景色为#0000FF;
$('#b3').click(function(){
//先选择所有div,然后再过滤
$("div:
not(.one)").css("background","#0000FF");
//one表示一个类名;表示去除类名为one的
});
5,$("div:
even");//表示先找出所有的div然后把偶数过滤出来,":
"就表示过滤的意思;
6,经典案例:
$("table:
eq(0)tr:
even").css("background","red");
//表示先选中第一个表格,有一个空格然后选择tr中索引为偶数的偶数列;第0列也为偶数列;
7,
第四讲:
1,内容过滤,根据内容选择器;
$('#b1').click(function(){
$("div:
contains('di')").css("background","#0000FF")
})
2,......用到的时候再查
3,只要是jquery操作的选择的它都默认返回的都是一个集合;
4,可见度过滤选择器:
可见度过滤选择器是根据元素的可见和不可见状态来选择相应的元素:
1,:
hidden用法:
$("tr:
hidden")返回集合元素,说明,匹配所有的不可见元素,Input元素的type属性为"hidden"的话也会被匹配到,意思是css中display:
none和inputtype="hidden"的都会被匹配到,同样,要在脑海中彻底分清楚冒号":
",点号"."和逗号","的区别;
2,:
visible用法:
$("tr:
visible")返回值集合元素说明:
匹配所有的可见元素;
5,该选择器是根据元素的可见性来选择对象,只要是通过jquery选择器选出来的对象都是jquery对象;
6,//改变所有可见的div元素的背景色为#0000FF
$('#b1').click(function(){
$('div:
visiable').css("background","#0000FF");
})
7,
$.each([1,"sp",4],function(i,n){
alert(i+""+n);//其中i表示索引值,n表示当前索引对应的值
})
8,vararr2=[{"name":
"小明"},{"name":
"大明"},{"name":
"老明"}];//arr2为对象集合
$.each(arr2,function(i,n){
alert(i+""+n.name);//name为取得对象的属性;
})
//jquery的方法:
$.each($objs,function(i,obj){
//这里i为索引变量,obj为取出的dom对象;obj=$objs[i]
window.alert("jquery对象"+$(obj).val());//就可以取出对象的值了
}
);
$.each($objs,function(){
//每循环一次,就相当于从数组中取出一个对象;必须把this要包一下;相当于this=$objs[i];此时this就是一个dom对象,所以必须要把this要包一下;
window.alert("jquery2"+$(this).val());
window.alert("dom"+this.value);//和上一句等价
})
第五讲:
课程回顾
1,使用jquery中有两种对象;一种dom对象【传统的】,一种jquery对象;
2,“T”型人才;
3,在jquery开发中,我们把一个对象当做一个集合来处理的;
4,jquery为什么这么流行呢这是因为它提供了九大选择器;
5,基本选择器是用的最多的,最基本的往往都是最重要的;
6,$("bodydiv");//表示把body下的所有的div都选中;
$("body>div");//表示把body下的第一级选中【儿子辈】,不包括孙子辈哦;
prev+next表示选择prev的下一个元素(强调:
同一级后面的兄弟,只选择一个);
prev+siblings表示选择prev的后面的所有元素(强调:
同一级后面的所有兄弟元素都会被选中);
7,选中文本中不含有di的div:
$("div:
not(:
contains('di'))")
8,$(:
hidden)==>会把style[display:
none]和
$(:
visible)==>会选中所有可见的元素;
停:
2014-09-1117:
30
第六讲:
属性过滤选择器
1,选出含有属性title的div元素:
$("#b1").click(
function(){
$("div[title]").css("background","green");
}
);
2,属性title值等于test的div元素
$("#b2").click(
function(){
$("div[title=\"test\"]").css("background","green");
}
);
3,找到属性title值以te开始的div元素
$("#b3").click(
function(){
$("div[title^='te']").css("background","red");
}
);
4,找到属性title的值,以est结束的div元素
$("#b5").click(
function(){
$("div[title$='est']").css("background","red");
}
);
5,属性title值,含有es的div元素
$("#b6").click(
function(){
$("div[title*='es']").css("background","red");
}
);
6,选取有属性id的div元素,然后再结果中选取属性title值含有"es"的div元素
$("#b7").click(
function(){
$("div[id][title*='es']").css("background","red");
}
);//属性使用"[]"来进行过滤的
7,我们的过滤方式有两种:
比如选出文本中含有abc的div$("div:
contains['abc']")
凡是跟属性过滤有关的属性和属性值的过滤我们就用"[]",其他就用":
";
第七讲:
子元素选择器表单对象属性选择器
1,//每个class为one的div父元素下的第2个子元素
$('#b1').click(
$("div.one:
nth-child
(2)").css("background","red");
)
2,//每个class为one的div父元素下的第一个子元素
$('#b2').click(
function(){
$("div.one:
first-child").css("background","red");
等价于:
$("div.one:
nth-child
(1)").css(......);
}
);
3,//如果class为one的div父元素下的仅仅只有一个子元素,那么选中这个子元素【就相当于独生子女】
$('#b4').click(
function(){
$("div.one:
only-child").css("background","red");
}
);
4,利用jquery对象的val()方法改变表单内type=text可用元素的值
$('#b1').click(
function(){
$("input[type='text']:
enabled").val("hello");
}
);
5,jquery对象在它使用的过程中都是当做一个集合来对待的,所以所有的jquery对象都有length属性;
6,利用jquery对象的length属性获取多选框中选中的个数
$("#b3").click(
function(){
//alert($(":
checkbox:
checked").length);
alert($("input[type='checkbox']:
checked").length);
}
);
7,总结一下过滤器使用的方式:
$("div.contains('di')");//按内容进行过滤;
$("div[type]");//按属性进行过滤;
$("div.one");//选中div中含class为one的div元素;
$("div,.one");//选中div和class为one的div元素;
8,利用jquery对象的text()方法获取下拉框选中的内容
$("#b4").click(function(){
alert($("selectoption:
selected").text());//如果用.val(),则只选中一个,val()针对一个而言;
//它会把你选中的内容弹出来
})
第八讲:
jquery对象集合遍历的四种形式及练习题讲解
1,总结jquery对象集合遍历的四种形式:
var$objs=$("selectoption:
selected");
$.each($objs,function(){
alert("$(this).val()");
})
$.each($objs,function(i,n){
//alert(n.value)//n为dom对象
alert($(n).val());
})
$objs.each(function(){
window.alert($(this).val());
});
$objs.each(function(i,n){
window.alert("ok"+$(n).val());
});
2,选择器选择原则:
1),选择什么样的选择器要根据需求来定;
2),如果针对文档内容,则使用内容选择器;
3),如果是选择父子(祖先,后代)元素则使用层次选择器;
4),如果是根据id/class/tagname则使用基本选择器;
5),如果是选择表单中的元素,则使用表单选择器,表单对象属性选择器;
6),根据可见性选择元素,则使用可见性选择器;
7),如果是选择某个元素中包含某个属性(属性值),则使用属性选择器;
8),!
!
!
如果考虑对选中的元素,要进行过滤,则使用过滤选选择器,(有三种方法)
$("div:
contains('di')");//内容
$("div[type]");//属性
$("div.one");//选中div中含class为.one的div元素;
3,jquery中的dom操作:
4,DOM(DocumentObjectModel--文档对象模型):
一种与浏览器,平台,语言无关的接口,使用该接口可以轻松地访问页面中所有的标准组件。
DOM操作的分类:
XML-DOMHTML-DOM和CSS-DOM三种;
5,//给id为first的数据添加样式类one:
$('#b1').click(
function(){
$('#first').attr("class","one");
}
);
//追加样式:
addClass()
#('#b2').click({
$('#first').addClas("one");
});
//移除样式:
removeClass()----从匹配的元素中删除全部或指定的class
$('#b3').click(
function(){
$("#first").removeClass("one");
}
);
第九讲:
1,AJAX和Jquery整合
第十讲:
jquery的dom操作内部插入外部插入
1,启动weblogic的shell命令:
nohupshstartWebLogic.sh&
2,cduser_projects/domains/base_domain/
3,ps-ef|grepweblogic
4,kill-919271//weblogic的进程号码为最长的那个[几行呢哦]
5,top-uweblogic
6,重启weblogic的话倒序执行这些shell命令;
--------------------------------------------
1,例子:
//添加重庆到上海下面
$("#b1").click(function(){
//jquery方法
//
//有两种方法
//1,一步到位
$myli=$("
//我们先使用内部插入
$('#city').append($myli);表示在$('#city')对象内部添加后添加$myli;
});
//以上功能我们通过dom逐步实现代码如下:
$myli=$("
");//<===>$myli=$("");$myli.text("重庆");//<===>
$myli.attr("id","cq");//<===>
$myli.attr("name","chongqing");
//把$myli添加到上海
$('#city').append($myli);//这种方法可以分布操作;
//如果使用appendTo这应当这样使用:
$myli.appendTo("#city");//表示把$myli添加到$("#city")对象的内部后面;
//append和appendTo在大部分作用是一样的;
2,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- jquery 学习 笔记 顺平