Метод .attr() в jQuery версий 1.5 и ниже

Помню, ранее сталкивался с проблемой, когда attr() не отрабатывал так, как нужно. Тогда не разобрался и просто переписал кусок на ванильном JS. Сейчас снова с этой же проблемой столкнулся. Попытался разобраться. Разобрался.

Суть:

Before jQuery 1.6, the .attr() method sometimes took property values into account when retrieving some attributes, which could cause inconsistent behavior.

Это из оф. документации, до этого пытался просто гуглить/тестить, но безуспешно.

Т. е. просто бага. Причем не всегда путаются атрибуты со стилями, в контексте того же SVG при попытке затребовать значение атрибута width отдается не то чтобы даже стиль, а вообще непонятно что (object SVGAnimatedLength).

В jQuery 1.6+ пофиксили, но писать сейчас приходится под 1.4, т. к. именно эта версия родная для Drupal 7.

Решил что называется отрефакторить код, переписав все на jQuery, дескать проще будет и кода меньше получится. Однако пока только сплошные проблемы.

VPS, который выше ожиданий

Linode

  • От $5 в месяц. SSD Storage, Intel E5 Processors, 40Gbit Network.
  • Скорость, стабильность, суппорт, документация — на высшем уровне.
  • Являюсь клиентом с 2013-го года. Только лучшие впечатления.

Реф. код: bc4d615fcd139afdd46f330e2b85a33f34348329

Добавить комментарий

Содержимое данного поля является приватным и не предназначено для показа.