jQuery的attr()方法是用來獲取或設置元素的屬性值。在一些情況下,我們需要檢查一個元素是否有某個屬性,這時候我們就需要知道如何判斷該屬性是否存在。
//判斷一個元素是否存在某個屬性 if($('#myElement').attr('data-name')){ //元素擁有data-name屬性 }else{ //元素沒有data-name屬性 }
在上面的例子中,我們使用attr()方法獲取了元素的data-name屬性的值。由于attr()方法返回的是屬性值,因此,如果元素不存在這個屬性,返回的是undefined,可以通過這個特性來判斷該屬性是否存在。
//另一個判斷是否存在屬性的方法 if($('#myElement').attr('data-name')!==undefined){ //元素擁有data-name屬性 }else{ //元素沒有data-name屬性 }
如果我們需要為元素添加一個屬性,又需要檢查該屬性是否存在,可以使用如下代碼:
//添加一個屬性并檢查是否存在 $('#myElement').attr('data-name','john'); if($('#myElement').attr('data-name')){ //元素擁有data-name屬性 }else{ //元素沒有data-name屬性 }
當然,我們也可以使用原生JS的方式來判斷元素是否存在某個屬性:
//原生JS判斷元素是否存在某個屬性 if(document.getElementById('myElement').hasAttribute('data-name')){ //元素擁有data-name屬性 }else{ //元素沒有data-name屬性 }
無論使用jQuery的attr()方法還是原生JS的方式來判斷元素是否存在某個屬性,都可以達到我們想要的效果。