4

This is not a duplicate question, I need only to decide if the better/fast/correct is to use attr or to use prop. The simplest and reliable way is checking into a list. A "list of element-name where the better is use prop(name) and/or a list where the better is use attr(name)".

PS: I am using jQuery 1.9+, and suppose that attr() is not a deprecated method.

Example of decisions (where the LIST have the answer):

  • is better get ID value by $(x).prop('id') or by $(x).attr('id')?
  • is better change title with $(x).prop('title','BLABLA') or with $(x).attr('title','BLABLA')?
  • can I use $(x).attr('selectedIndex')?
  • what property names have risk with "Cross-browser consistency"?
  • there are some case (with Microsoft-IE p.ex.) where $(x).attr('name') and $(x).prop('name') will return different things?

Perhaps a full list is not necessary, only a list of things that make some difference or risk for jQuery.

Edited after close: please click in the REOPEN link below to accept this edited question text.

Community
  • 1
  • 1
Peter Krauss
  • 11,340
  • 17
  • 129
  • 247

2 Answers2

1

They vary from browser-to-browser, but here's IE's list...http://msdn.microsoft.com/en-us/library/ie/hh773183(v=vs.85).aspx

kaidez
  • 639
  • 7
  • 26
1

Have a look at https://developer.mozilla.org/en-US/docs/DOM/element#Properties and also consider that many properties are only available on special types of elements.

Bergi
  • 513,640
  • 108
  • 821
  • 1,164