在使用 jQuery 操作 DOM 元素時最常用的方式之一就是使用 .prop() 和 .attr() 來獲取或設置屬性值。這兩個方法有一些相似之處,但也有一些差異。
首先我們來看 .prop() 方法。它是獲取或設置元素的屬性值,但是只能操作可布爾屬性,例如 checked、disabled、selected 等。這些屬性的值一般是 true 或 false。比如,我們可以使用以下代碼設置一個 checkbox 元素的 checked 狀態:
// 設置 checkbox 為選中狀態 $('input[type="checkbox"]').prop('checked', true);
而當我們想要讀取一個元素的屬性值時,可以使用 .prop() 方法來獲取。例如,獲取一個 select 元素的 disabled 狀態:
// 獲取 select 元素的 disabled 狀態 $('select').prop('disabled');
而 .attr() 方法則可以獲取或設置一個元素的任意屬性。例如,獲取一個 img 元素的 src 屬性:
// 獲取 img 元素的 src 屬性 $('img').attr('src');
同樣,我們也可以使用 .attr() 方法來設置一個元素的屬性值,例如:
// 設置 a 元素的 href 屬性 $('a').attr('href', 'http://www.example.com');
需要注意的是,在一些需要注意大小寫的屬性名,如 ID 和 CLASS,使用 .attr() 方法也是比較合適的。