JQ中的屬性操作及獲取元素樣式和修改樣式

2021-10-13 07:27:17 字數 2498 閱讀 4252

我們在jq中,想要獲取屬性值怎麼辦呢,有兩個方式,乙個呢使用attr和prop,而這兩個方式呢,是有區別的,我們來看一下

attr();常用語常規屬性的使用,也可以用於自定義屬性的值

prop();常用於可簡寫屬性值的獲取,無法獲取自定義屬性值

一般在開發的時候都用prop,禁用值在獲取的時候是true和false

我們注意一點,這個禁用值是什麼,為什麼開發的時候都用 的是prop呢,我們來看一下:

禁用和輸入欄位的簡單jquery**段,例如,使用者無法更改表單上文字框的值。

<

!-- disabled禁用 --

>

"text"

class

="incls" disabled default

="hha"

/>

那我們在開發的時候為什麼一般都用prop呢:

prop和attr的作用類似

相同點:兩者都可以獲取屬性值和設定屬性值

不同點:在處理checkbox上,建議使用prop,原因在於ie瀏覽器不相容,因為是相似的所有個人建議使用prop

我們來看一下attr和prop的用法

console.

log(

"attr獲取屬性值",$

('input').

attr

("class"),

$('input').

attr

("disabled"),

$('input').

attr

("default"))

; console.

log(

"prop獲取屬性值",$

('input').

prop

("class"),

$('input').

prop

("disabled"),

$('input').

prop

("default"))

;

我們來看一下元素的獲取及修改是怎麼做到的,我們用jq的理念就是寫得少,做得多,以及用哪些方式來寫

我們先給乙個用來測試的標籤

="btn"

>show jquetry1<

/button>

"btnid"

class

="btn"

>show jquetry2<

/button>

="btn"

>show jquetry3<

/button>

""/a>

"www.sina.cn"

/a>

"text"

/>

"text"

/>

"submit"

/>

我們先來看一下以js的方式獲取元素的方式是怎麼獲取的

let btns=document.

getelementsbytagname

("button");

let btnscls = document.

getelementsbyclassname

("btn"

)console.

log(btnscls)

;

這是以js的方式來獲取元素的標籤和通過class選擇器來獲取的標籤,底下的console.log(獲取標籤後的變數名)。

我們接下來來看一下用jq獲取標籤的方式有哪些

// jquery獲取到的元素都是以組的形式存在 書寫規範,如果用jq獲取元素標籤,變數前面必須加($)$btns=$('button');

let $btns=$(

'button');

let $btnscls=$(

'.btn');

let $btnid=$(

"#btnid");

let $btnattr=$(

'a[href^="www"]');

let $input=$(

'input:not([type="submit"])');

let $nth=$(

'button:nth-of-type(1)');

console.

log($nth)

;

我們在jq中獲取到的元素都是以組的形式存在,而js中的獲取標籤,id選擇器是以乙個元素來獲取的,和js另外的標籤選擇器,類選擇器,通過name屬性獲取到的都一樣,這三個獲取到的都是一組資料。我們在用jq獲取的時候,前面都要加上乙個$符,這是書寫規範,而這個裡面也可以通過class id等屬性來獲取標籤,裡面還有乙個a[href^=「www」],從href屬性獲取到的以www開頭的標籤,input:not([type="submit])標籤,這個not的意思就是獲取除type=submit以外的input標籤,button:nth-of-type(1)獲取的是好幾個button標籤的第乙個標籤,括號裡填幾就是獲取第幾個標籤

獲取元素樣式屬性的方法

獲取 的高度1 如果是行內樣式 style可以直接獲取。document.getelementsbytagname div 0 style.height 2 如果是內聯樣式 用style返回的是undefined 需要採用其他方法。由於不同瀏覽器造成相容問題,獲取的方法又不相同。在ie中,採用的是c...

獲取 DOM 元素設定的樣式屬性

document.getelementbyid style獲取的是元素行間設定的樣式,不能獲取到css中設定的樣式。如果要獲取css中設定的樣式,可以試試getcomputedstyle 標準瀏覽器 或者currentstyle ie低版本 let target document.getelemen...

jq 設定和獲取元素內容和屬性

元素的內容操作 html 獲取元素中的html內容 alert div html html val 設定元素中的html內容 alert div html haha text 獲取元素中的文字內容 alert div text text val 設定元素中的文字內容 alert div text h...