상세 컨텐츠

본문 제목

JQuery 1.6의 가장 큰 변화! .prop() 함수.

Programming/jQuery

by otamot 2011. 12. 20. 16:29

본문

  실제 프로젝트에서 jQuery를 적용중입니다. 기존 순수 Javascript를 사용할 때 보다 코드 양이 많이 줄어드는 것 때문에 저는 jQuery를 선호하는 편입니다. 그런데 1.4를 쓰다가 1.6대로 변경된 적이 있는데 이상하게 적용이 안되는 부분이 있었습니다.
  checkbox의 상태를 변경하거나 읽어올 때 '.attr()'함수를 이용했었는데 어느 순간부터인가 적용이 잘 안되었습니다. 단순 오류라고 생각하고
jObject[0].checked = "checked";
이렇게 javascript 객체로 변경해서 진행했습니다. (적용이 안되니 어떻게든 되게 해야져 ^^;;)
그런데 우연한 구글신과의 만남중에 정말로 우연히 1.6에서 변화가 있었다는 것을 알게되었습니다. 사용하고 있던 api가 이렇게 변경될 줄이야!!
  기존의 attr()로 처리되었던 것을 attr()과 prop()로 분리되어 처리되게 되었습니다.

.prop()
 


다음은 .attr()과 .prop()사용에 관한 구분입니다.
(출처:서디의 다락방:jQuery 1.6.1 릴리즈, 성능 , 버그 픽스 내용

Attribute/Property

.attr()

.prop()

accesskey

align

async

autofocus

checked

class

contenteditable

defaultValue


draggable

href

id

label

location *

multiple

nodeName


nodeType


readOnly

rel

selected

selectedIndex


src

style

tabindex

tagName


title

type

width **