Подтвердить что ты не робот

JQuery 1.9.0 Список устаревших, удаленных и измененных функций с версии 1.6.4

В настоящее время мы обновляем jQuery в нашем приложении с jQuery 1.6.4 до 1.9.0.

Я полагаю, что получил большинство изменений, зафиксированных в нашем приложении, однако я хотел бы быть уверенным, что вы можете перейти из полутвердого списка функциональных изменений jQuery.

Как сейчас, только два основных изменения, которые я вижу, - это удаление функций .live и $.browser.

Были также некоторые проблемы, которые привели к тому, что мы обновили пользовательский интерфейс jquery до последней версии.

У нас есть большое приложение, и мы наконец получили одобрение отказаться от поддержки IE 6 и поэтому стараемся приблизить его к современности.

Я не ищу полный журнал изменений для каждой версии, так как журналы изменений включают в себя множество вещей, которые мне действительно не нравятся. Надеюсь, это также поможет другим в процессе обновления.

То, что я ищу: Устаревшие функции, Удаленные функции, Важные функциональные изменения, такие как старые attr и prop

Каковы устаревшие, удаленные функции и важные функциональные изменения, поскольку jQuery 1.6.4 - 1.9.2...

4b9b3361

Ответ 1

Поскольку этот вопрос может быть закрыт, имеет смысл, поскольку nhahtdh предложил отправить ответ, чтобы иметь возможность редактировать и добавлять информацию позже. Не стесняйтесь вносить изменения, добавляя дополнительные заметки об изменениях и даже увеличивая их до последних версий jQuery (1.10)

>= jQuery 1.6.4

Заметных изменений не отмечено

>= jQuery 1.7.1

Заметных изменений не отмечено

>= jQuery 1.7.2

Из Документов: If you’re using jQuery Mobile, please use jQuery 1.7.2 only with jQuery Mobile 1.1. For previous versions of jQuery Mobile, stay with jQuery core 1.7.1 or earlier.

>= jQuery 1.8.0

Основные изменения для просмотра:

  • animations - основные изменения
  • CSS Prefixing

    • Из jquery:

      Когда вы используете свойство CSS, в .css() или .animate(), используйте правильное свойство префикса (если необходимо) для этого браузера. Например, возьмите .css( "user-select", "none" ); в Chrome/Safari вы можете установить значение "-webkit-user-select", Firefox будет использовать "-moz-user-select", а IE10 будет использовать "-ms-user-select".

  • data

    Метод .data() имел недокументированный и невероятно неэффективный способ отслеживания настроек и получения значений, которые были удалены в 1.9. Это повлияло на интерпретацию названий данных, которые содержат периоды, в хорошем смысле. Начиная с 1.9, вызов .data( "abc.def" ) извлекает данные только для имени "abc.def" и никогда не "abc". Обратите внимание, что метод jQuery.data() нижнего уровня никогда не поддерживал события, и поэтому он не изменился. Плагин jQuery Migrate не восстанавливает прежнее поведение для этого случая.

  • .curCSS: для меня это важно. Обновление нового пользовательского интерфейса jQuery устранило эту проблему, но важно отметить, что без обновления это может сломать различные вещи.

    $. curCSS: Этот метод был просто псевдонимом для jQuery.css() из jQuery 1.3. Хотя он никогда не был частью документированного API, какой-то внешний код, как известно, использовал его, возможно, думая, что он "более эффективен". Теперь его "больше ушло".

>= jQuery 1.8.1

Примечания jQuery: Use jQuery UI 1.8.23 and jQuery Mobile 1.1.1 or later for best compatibility with jQuery core 1.8.1.

Don’t use Quirks mode! http://blog.jquery.com/2012/08/30/jquery-1-8-1-released/

>= jQuery 1.8.2

  • offset: Это может повлиять на страницу, ожидающую отклонения значения от смещения уже в определенном браузере. http://bugs.jquery.com/ticket/12536

СДЕЛАТЬ .OFFSET() CALC МЕНЬШЕ НЕПРАВИЛЬНО НА ПРОСМОТРАХ W/O GETBOUNDINGCLIENTRECT

>= jQuery 1.8.3

Заметных изменений не отмечено

>= jQuery 1.9.0 из http://jquery.com/upgrade-guide/1.9/

  • .toggle(function, function, ... ) removed

    Это подпись "click an element for running the specific functions".toggle(). Его не следует путать с "изменением видимости элемента".toggle(), который не устарел.

  • jQuery.browser() removed

  • .live() removed

  • .die() removed

  • jQuery.sub() removed

  • .add() изменяет http://jquery.com/upgrade-guide/1.9/#add-

  • .addBack( selector ) replaces .andSelf() http://jquery.com/upgrade-guide/1.9/#addback-selector-replaces-andself-

  • .after(), .before(), and .replaceWith() with disconnected nodes

  • .appendTo, .insertBefore, .insertAfter, and .replaceAll

  • AJAX events should be attached to document

  • Checkbox/radio state in a .trigger()ed "click" event

  • Order of triggered "focus" events

  • jQuery(htmlString) versus jQuery(selectorString)

  • Events not fired by the .data() method; names with periods

  • Ordering of disconnected nodes within a jQuery set

  • Loading and running scripts inside HTML content

  • .attr() versus .prop()

  • $("input").attr("type", newValue) in oldIE

  • "hover" pseudo-event

  • .selector property on jQuery objects

  • jQuery.attr()

  • jQuery.ajax returning a JSON result of an empty string

  • jQuery.proxy() context

  • .data("events")

  • Removed properties of the Event object

  • Undocumented arguments of API methods

Я рассмотрю и добавлю к этому позже, когда найду больше проблем.

Ответ 2

Последняя версия jQuery - 1.9.0, и это документ руководства по обновлению

http://jquery.com/upgrade-guide/1.9/

Вы можете найти их здесь:

Изменения примечания в jQuery 1.9

  • .toggle(function, function, ... ) удален
  • jQuery.browser() удален
  • .live() удален
  • .die() удален
  • jQuery.sub() удален
  • .add()
  • .addBack( selector ) заменяет .andSelf()
  • .after(), .before() и .replaceWith() with disconnected nodes
  • .appendTo, .insertBefore, .insertAfter и .replaceAll
  • События AJAX должны быть прикреплены к документу
  • Состояние флажка/радио в событии .trigger() ed "click"
  • Порядок срабатывания событий "focus"
  • jQuery(htmlString) против jQuery(selectorString)
  • События, не запущенные методом .data(); имена с периодами
  • Заказ отключенных узлов в наборе jQuery
  • Загрузка и запуск скриптов внутри содержимого HTML
  • .attr() против .prop()
  • $("input").attr("type", newValue) в oldIE
  • "hover" псевдо-событие
  • .selector свойство для объектов jQuery
  • jQuery.attr()
  • jQuery.ajax возвращает результат JSON пустой строки
  • jQuery.proxy() контекст
  • .data("events")
  • Удаленные свойства объекта Event
  • Недокументированные аргументы методов API
  • Другие недокументированные свойства и методы