慕课网jQuery二
来源:互联网 发布:淘宝账户被骇客入侵 编辑:程序博客网 时间:2024/06/06 00:25
特殊选择器this
DOM中this就是指向了这个html元素,因为this就是DOM元素本身的一个引用
this,表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性和方法。
$(this),代表的上下文对象是一个jQuery的上下文对象,可以调用jQuery的方法和属性值。
jQuery的属性与样式
.attr()与.removeAttr()
- attr(传入属性名):获取属性的值
- attr(属性名,属性值):设置属性的值
- attr(属性名,函数值):设置属性的函数值
- attr(attributes):给指定元素设置多个属性值,即:{属性名一:“属性值一”,属性名二:“属性值二”,……}
removeAttr()删除方法
.removeAttr(attributeName):为匹配的元素集合中的每个元素移除一个属性(attribute)
.html()及.text()
.html()方法
1. .html()不传入值,就是获取集合中第一个匹配元素的HTML内容
2. .html(htmlString)设置每一个匹配元素的html内容
3. .html(function(index,oldhtml))用来返回设置HTML内容的一个函数
注意事项:
.html()方法内部使用的是DOM的innerHTML属性来处理的,所以在设置与获取上需要注意的一个重要的问题,这个操作是针对整个HTML内容(并不仅仅是文本内容)
.text()方法
1. text()得到匹配元素集合中每个元素的合并文本,包括他们的后代
2. .text(textString)用语设置匹配 元素内容的文本
3. .text(function(index,text))用来返回设置文本内容的 一个函数
注意事项:
.text()结果返回一个字符串,包含所有匹配元素的合并文本
.val()
- .val()无参数,获取匹配的元素集合中第一个元素的当前值
- .val(value),设置匹配的 元素集合中每个元素的值
- .val(function),一个用来返回设置值的函数
注意事项:
1. 通过.val()处理select元素,当没有选择项被选中,它返回null
2. .val()方法多用来设置表单的字段的值
3. 如果select元素有multiple(多选)属性,并且至少一个选择项被选中,.val()方法返回一个数组,这个数组包含每个选中选择项的值
.html(),.text()和.val()的差异总结:
.html(),.text(),.val()三种方法都是用来读取选定元素的内容;只不过.html()是用来读取元素的html内容(包括html标签),.text()用来读取元素的纯文本内容,包括其后代元素,.val()是用来读取表单元素的”value”值。其中.html()和.text()方法不能使用在表单元素上,而.val()只能使用在表单元素上;另外.html()方法使用在多个元素上时,只读取第一个元素;.val()方法和.html()相同,如果其应用在多个元素上时,只能读取第一个表单元素的”value”值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。
.html(htmlString),.text(textString)和.val(value)三种方法都是用来替换选中元素的内容,如果三个方法同时运用在多个元素上时,那么将会替换所有选中元素的内容。
.html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容。
.addClass()
- .addClass(className):为每个匹配元素所要增加一个或多个样式名
- .addClass(function(index,currentClass)):这个函数返回一个或更多用空格隔开的要增加的样式名
注意:.addClass()方法不会替换一个 样式类名,只是添加。
删除样式.removeClass().
- . removeClass( [className ] ):每个匹配元素移除的一个或多个用空格隔开的样式名
- .removeClass( function(index, class) ) : 一个函数,返回一个或多个将要被移除的样式名
注意事项:
如果一个样式类名作为一个参数,只有这样式类会被从匹配的元素集合中删除 。 如果没有样式名作为参数,那么所有的样式类将被移除
切换样式.toggleClass()
如果类中有,则删除,如果没有则添加。
$("").toggleClass("c")
如果某种元素该有此类,保留,不该有此类的元素删除此类
$("").toggleClass("c",true)
样式操作.css()
.css("属性","属性值")设置.css(['width','height'])返回宽高.css("属性")返回属性值.css({ 'font-size' :"15px", "background-color" :"#40E0D0", "border" :"1px solid red" })css("width",function(index,value){ //value带单位,先分解 value = value.split('px'); //返回一个新的值,在原有的值上,增加50px return (Number(value[0]) + 50) + value[1]; })
.css()与.addClass()设置样式的区别
可维护性:.addClass()的本质是通过定义个class类的样式规则,给元素添加一个或多个类。css方法是通过JavaScript大量代码进行改变元素的样式。通过.addClass()可以批量给相同元素设置统一规则,.css()方法需要指定每一个元素一一修改
灵活性:通过.css()方式可以很容易动态的去改变一个样式的属性,不需要在去繁琐的定义个class类的规则。一般来说在不确定开始布局规则,通过动态生成的HTML代码结构中,都是通过.css()方法处理的
样式值:
.addClass()本质只是针对class的类的增加删除,不能获取到指定样式的属性的值,.css()可以获取到指定的样式值。
样式的优先级:
css的样式是有优先级的,当外部样式、内部样式和内联样式同一样式规则同时应用于同一个元素的时候,优先级如下
外部样式 < 内部样式 < 内联样式
.addClass()方法是通过增加class名的方式,那么这个样式是在外部文件或者内部样式中先定义好的,等到需要的时候在附加到元素上
通过.css()方法处理的是内联样式,直接通过元素的style属性附加到元素上的
通过.css方法设置的样式属性优先级要高于.addClass方法
总结:
.addClass与.css方法各有利弊,一般是静态的结构,都确定了布局的规则,可以用addClass的方法,增加统一的类规则
如果是动态的HTML结构,在不确定规则,或者经常变化的情况下,一般多考虑.css()方式
- 慕课网jQuery二
- JQuery(二)
- Jquery(二)
- Jquery二
- Jquery(二)
- JQuery二
- JQuery二、
- Jquery(二)jquery选择器
- 慕课网jQuery学习笔记(二)
- jquery 学习 二 DOM & JQUERY
- jQuery学习 二 jQuery 效果
- jQuery使用手册(二)
- jquery中文乱码二
- jQuery使用手册(二)
- JQuery笔记(二)-选择器
- jquery教程二:属性
- jquery学习笔记(二)
- jQuery总结(二)
- 常用的依赖包和权限
- TensorFlow变量详细介绍
- 简单小游戏-剪刀石头布的c语言实现
- zhoukao2EX
- 51nod 1097 拼成最小的数 【简单排序】
- 慕课网jQuery二
- 2017.10.22 有人说BOSS的自制力碾压我们
- springmvc返回参数在jsp页面上展示不出来
- activity_main.xml
- okhttp3封装
- Linux Shell 基础(三)--登录脚本,支持多用户查找
- fragment_a.xml
- 【JAVA_SE】作业练习1022
- USACO gold + silver 刷题计划