Могу ли я, разработчик jQuery1.9 +, "отказаться" от использования метода attr()
в моей повседневной работе?
Как показано во многих вопросах,
- .prop() vs .attr() (основной)
- jQuery attr vs. prop, есть список реквизитов?
- jQuery attr vs prop?
- Миграция jQuery 1.8.3 до 1.9.0 - Замена устаревшего .attr()
- ... и т.д....
есть много путаницы в отношении "использования attr или использования prop?", и, с точки зрения моего (разработчика), для всех видов использования метода attr()
вместо этого мы можем использовать prop
:
- обратная совместимость: кодирование нового программного обеспечения не нуждается в этом;
- производительность: Джон говорит "Доступ к свойствам с помощью метода .attr() будет немного медленнее, чем доступ к ним напрямую через .prop()";
- Изменить значение атрибута: все может быть изменено с помощью метода
prop(name,newvalue)
. - Удалить атрибут: все можно удалить с помощью метода
removeProp(name)
. - Проверьте значения атрибутов HTML: браузер использует DOM, весь HTML был преобразован в DOM, и, если DOM повлиял на метод
attr(name)
. О "сильном типе" prop: лучше, чем "html string value" (например, "checked" vs true). - Проверьте, был ли атрибут определен в "исходном коде HTML" (если этот метод
attr
в вашем браузере возвращает undefined, если это не так)... Ну, нам это нужно в каком-то программном обеспечении? В формах метод ".val() является рекомендуемым способом jQuery для получения или установки значений формы" - Совместимость между браузерами: оба (не только attr) - это согласованные методы. (это??).
Итак, в это время (2013) я не вижу веских оснований использовать метод attr
при разработке нового кода jQuery... Но, ну, это, другими словами, вопрос: Там являются хорошей причиной для использования метода attr
в моих повседневных задачах?