jQuery学习笔记
来源:互联网 发布:键位修改软件 编辑:程序博客网 时间:2024/05/17 16:14
1. jQuery 是 JavaScript 的一个函数库。
2.利用 jQuery 开发的步骤:
1). 倒入 jQuery 库
2). 在 $(function(){}) 的 {} 中编写 jQuery 代码
<script type="text/javascript" src="jquery-1.7.2.js"></script>
<script type="text/javascript">
$(function(){
$("#btn1").click(function){
//使所有的可用的单行文本框的 value 值变为 尚硅谷
$(":text:enabled").val("尚硅谷");
}
})
</script>
3. jQuery 对象 VS DOM对象
1). jQuery 对象不能使用 DOM 对象的属性和方法,反之,DOM 对象也不能使用jQuery 对象的属性和方法
2). jQuery 对象是一个 DOM 数组对象,所以可以使用下标的方式转为 DOM 对象
var $btn = $("button");
var btn = $btn[0];
3). jQuery 对象是使用 $() 保证 DOM 对象后产生的对象:
$().each(function(){
alert($(this).val());
});
4.jQuery 的选择器
1). 选择被选中的Select 的 option 需要使用选择子节点的方式:
$("select[name='test'] :selected").each(function(){
//...
})
2).jQuery 选择器可以综合使用
3).如果选择器搞不定,可与借助方法
5.jQuery 对象的几个方法
1). val() : 获取或设置表单元素的 value 属性值
//设置值
$(":text:enabled").val("尚硅谷");
//获取值
$alert($(":text;enabled").val());
2). attr() 和 val() 方法类似
attr(name,val): 为 name 属性赋值为 val
attr(name): 获取 name 属性值
3). each(): 对jQuery 对象进行遍历,其参数为 function ,函数内部的 this 是正在遍历的 DOM 对象
$("select :selected").each(function(){
alert(this.value);
});
4). text() : 和val() 方法类似
text(): 获取元素节点的文本子节点的值
text(str) : 设置元素节点的文本子节点的值
6. 使用 jQuery 进行 DOM 操作:
1). 新建(元素 ,属性,文本)节点: 直接使用 $() 保证即可,返回值是一个 jQuery 对象
var $atguigu = $("<li id='atguigu'>尚硅谷</li>");
2). 把节点插入到文档中:
* append, appendTo: 把节点 A 插入为节点 B 的最后一个子节点
$("<li id='atguigu'>尚硅谷</li>").appendTo($("#city"));
$("#city").append("<li id='atguigu'>尚硅谷</li>");
*prepend, prependTo
$("<li id='atguigu'>尚硅谷</li>").preappendTo($("#city"));
$("#city").preappend("<li id='atguigu'>尚硅谷</li>");
* before, insertBefore
$("<li id='atguigu'>尚硅谷</li>").insertBefore($("#city"));
$("#city").before("<li id='atguigu'>尚硅谷</li>");
* after, insertAfter
$("<li id='atguigu'>尚硅谷</li>").insertAfter($("#city"));
$("#city").after("<li id='atguigu'>尚硅谷</li>");
3). 删除节点:
$("#bj").remove();
4).清空节点:
$("#game").empty();
5). 克隆节点:
$("#bj").clone(true)
.attr("id", "bj2")
.insertAfter($("#rl"));
6). 替换节点:
// 创建一个<li>[尚硅谷]</li> 节点,替换 #city 的最后一个 li 子节点
$("<li>[尚硅谷]</li>").replaceAll($("#city li:last"));
// 创建一个<li>[尚硅谷]</li> 节点,替换 #city 的最后一个 li 子节点
$("#city li:eq(1)").replaceWith("<li>[尚硅谷]</li>");
7). wrap, wrapAll, wrapInner: 了解
wrap(): 将指定节点用其他标记包裹起来.
该方法对于需要在文档中插入额外的结构化标记非常有用, 而且不会破坏原始文档的语义.
wrapAll(): 将所有匹配的元素用一个元素来包裹. 而 wrap() 方法是将所有的元素进行单独包裹.
wrapInner(): 将每一个匹配的元素的子内容(包括文本节点)用其他结构化标记包裹起来.
8). val(), html(), text(), attr(), width(), height() 等兼具有读写的方法:
attr(): 获取属性和设置属性
当为该方法传递一个参数时, 即为某元素的获取指定属性
当为该方法传递两个参数时, 即为某元素设置指定属性的值
//读取某个节点的 html 内容
alert($("#city").html());
//设置某个节点的 html 内容
$("#city").html("<li id='atguigu'>尚硅谷</li>"));
7. 注意:
1). jQuery 对象可以进行隐式迭代:$("p").click(function(){...}); 为选取的所有的 p 节点都添加了 click 响应函数
jQuery 对象本身就是一个 DOM 数组
2). 在jQuery 中显示迭代:使用 each()方法:
$(":checkbox[name='c']:checked").each(function(){
alert(this.value);
});
可以在显示迭代的相应函数的参数中通过 index 属性获取到正在遍历的对象的索引
3).在响应函数中,this 是一个 DOM 对象,若想使用 jQuery 对象的方法,需要把其包装为jQuery 对象:
使用 $() 把 this 包起来
4). defaultValue : DOM 对象的属性,可以获取表单元素的默认值
5). 通过 val() 为 radio 赋值: val 参数中也应该使用数组,使用一个值不起作用
6). val() 方法不能直接获取 checkbox 被选择的值,若直接获取,只能得到第一个被选择的值。
因为$(":checkbox[name='c']:checked") 得到的是一个数组。若希望打印被选择的所有值,需要使用 each 遍历
而 radio 被选择的只有一个,所以可以直接使用 val() 方法获取被选择的值
7). 同 JS 的响应函数一样,jQuery 对象的响应函数若返回 false ,可以取消指定元素的默认行为。
比如 submit, a 等
8). $.trim(str) : 可以去除 str 的前后空格
9). jQuery 对象的方法的连缀: 调用一个方法的返回值还是调用的对象,于是可以在调用方法的后面依然调用先前的那个对象的其他方法
$("<tr></tr>").append("<td>"+$("#name").val()+"</td>")
.append("<td>"+$("#email").val()+"</td>")
.append("<td>"+$("#salary").val()+"</td>")
.append("<td><a href='deleteEmp?id=xxx'>Delete</a></td>")
.appendTo("#employeetable tbody")
.find("a")
.click(function(){
return removeTr(this)
});
10). find() 方法: 查找子节点,返回值为子节点的对应的 jQuery 对象
var $trNode = $(aNode).parent().parent();
//获取 $tr 的第一个 td 节点的文本节点的文本值
var textContent = $trNode.find("td:first").text();
- 【学习笔记】JQuery学习笔记
- jQuery 学习笔记 + jQuery-UI 学习笔记
- 【jQuery 学习笔记】初识jQuery
- jQuery 学习笔记------jQuery选择器
- jquery学习笔记----初识jquery
- jQuery学习笔记--jQuery Ajax
- jquery学习笔记
- jquery选择器学习笔记
- jQuery学习笔记
- 【jquery】学习笔记
- jQuery学习笔记
- jquery学习笔记
- jquery 学习笔记
- JQuery学习笔记
- Jquery学习笔记
- JQuery学习笔记
- jQuery学习笔记
- jquery学习笔记(二)
- Leetcode #541 Reverse String II
- Binary Tree Maximum Path Sum
- Spring中数据库连接池需要注意的问题
- 关闭全部动态加载的子集菜单
- Firefox新打开标签页不断刷新无法输入地址
- jQuery学习笔记
- 开发地址
- 怎么做二手车成交可能性预测
- Java跨平台原理
- Expected resource of type drawable [ResourceType]
- 欢迎使用CSDN-markdown编辑器
- 475. Heaters
- java中的缓存策略
- redis缓存解析