jQuery 属性操作

5. 属性操作

5.1  设置或获取元素固有属性值 prop()

所谓元素固有属性就是元素本身自带的属性,比如 <a> 元素里面的 href ,比如 <input> 元素里面的 type。

1. 获取属性语法

prop(''属性'')

2. 设置属性语法

prop(''属性'', ''属性值'')

5.2  设置或获取元素自定义属性值 attr()

用户自己给元素添加的属性,我们称为自定义属性。 比如给 div 添加 index =“1”。

1. 获取属性语法

attr(''属性'')      // 类似原生 getAttribute()

2. 设置属性语法

attr(''属性'', ''属性值'')   // 类似原生 setAttribute()

5.3  数据缓存 data()

data() 方法可以在指定的元素上存取数据,并不会修改 DOM 元素结构。一旦页面刷新,之前存放的数据都将被移除。

1. 附加数据语法

data(''name'',''value'')   // 向被选元素附加数据   

2. 获取数据语法

date(''name'')             //   向被选元素获取数据   

同时,还可以读取 HTML5 自定义属性  data-index ,得到的是数字型

6. jQuery 内容文本值

主要针对元素的内容还有表单的值操作。

1. 普通元素内容 html()( 相当于原生inner HTML)

html()             // 获取元素的内容
html(''内容'')   // 设置元素的内容

2. 普通元素文本内容 text()   (相当与原生 innerText)

text()                     // 获取元素的文本内容
text(''文本内容'')   // 设置元素的文本内容

3. 表单的值 val()( 相当于原生value)

val()              // 获取表单的值
val(''内容'')   // 设置表单的值

7. jQuery 元素操作

主要是遍历、创建、添加、删除元素操作。

7.1 遍历元素

jQuery 隐式迭代是对同一类元素做了同样的操作。 如果想要给同一类元素做不同操作,就需要用到遍历。

语法1:

$("div").each(function (index, domEle) { xxx; })       
  1. each() 方法遍历匹配的每一个元素。主要用DOM处理。 each 每一个
  2. 里面的回调函数有2个参数:  index 是每个元素的索引号;  demEle 是每个DOM元素对象,不是jquery对象
  3. 所以要想使用jquery方法,需要给这个dom元素转换为jquery对象  $(domEle)

语法2:

$.each(object,function (index, element) { xxx; })       
  1. $.each()方法可用于遍历任何对象。主要用于数据处理,比如数组,对象
  2. 里面的函数有2个参数:  index 是每个元素的索引号;  element  遍历内容

7.2 创建元素

语法:

$(''<li></li>'');    

动态的创建了一个 <li>  

7.3 添加元素

1. 内部添加

element.append(''内容'')  

把内容放入匹配元素内部最后面,类似原生 appendChild。

element.prepend(''内容'')  

把内容放入匹配元素内部最前面。

2. 外部添加

element.after(''内容'')        //  把内容放入目标元素后面
element.before(''内容'')    //  把内容放入目标元素前面 

  1. 内部添加元素,生成之后,它们是父子关系。
  2. 外部添加元素,生成之后,他们是兄弟关系

7.4 删除元素

element.remove()   //  删除匹配的元素(本身)
element.empty()    //  删除匹配的元素集合中所有的子节点
element.html('''')   //  清空匹配的元素内容
  1. remove 删除元素本身。
  2. empt() 和  html('''') 作用等价,都可以删除元素里面的内容,只不过 html 还可以设置内容。

7. jQuery 尺寸、位置操作

7.1  jQuery 尺寸

  1.  以上参数为空,则是获取相应值,返回的是数字型。
  2. 如果参数为数字,则是修改相应值。
  3. 参数可以不必写单位。

7.2  jQuery 位置

位置主要有三个: offset()、position()、scrollTop()/scrollLeft()

1. offset() 设置或获取元素偏移

  1. offset() 方法设置或返回被选元素相对于文档的偏移坐标,跟父级没有关系。
  2. 该方法有2个属性 left、top 。offset().top  用于获取距离文档顶部的距离,offset().left 用于获取距离文档左侧的距离。
  3. 可以设置元素的偏移:offset({ top: 10, left: 30 });

2. position() 获取元素偏移

  1. position() 方法用于返回被选元素相对于带有定位的父级偏移坐标,如果父级都没有定位,则以文档为准。
  2. 该方法有2个属性 left、top。position().top 用于获取距离定位父级顶部的距离,position().left 用于获取距离定位父级左侧的距离。
  3. 该方法只能获取。

3. scrollTop()/scrollLeft() 设置或获取元素被卷去的头部和左侧

  1. scrollTop() 方法设置或返回被选元素被卷去的头部。
  2. 不跟参数是获取,参数为不带单位的数字则是设置被卷去的头部。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值