Как исправить ошибку «неподдерживаемый псевдо» jQuery 1.8?

Плагин, который я использую, зависит от $(':animated'), но так как я обновился до jQuery 1.8.0, это выдает ошибку:

Uncaught Error: синтаксическая ошибка, нераспознанное выражение: неподдерживаемый псевдо: анимированный

Отказала ли jQuery 1.8.0 поддержку этого пользовательского селектора как часть изменений в Sizzle? Как я могу это исправить?


person Mathias Bynens    schedule 10.08.2012    source источник
comment
А, я вижу, jQuery 1.8 только что выпустили. Мне любопытно, канонизирует ли это термин псевдоселектор? Я очень надеюсь, что нет, хотя, глядя на сообщение об ошибке и тот факт, что $.expr.filters теперь $.expr.pseudos, похоже, это так...   -  person BoltClock    schedule 10.08.2012


Ответы (1)


Не беспокойтесь, jQuery 1.8.0 по-прежнему поддерживает пользовательский селектор $(':animated').

Однако, вопреки тому, что вы могли ожидать, он не является частью Sizzle (селекторного механизма jQuery). Если вы используете пользовательскую сборку, убедитесь, что вы не исключили модуль effects, который 653" rel="nofollow">определяет селектор :animated.

Например, если вы раньше создавали пользовательскую сборку jQuery с помощью этой команды:

grunt custom:-ajax,-deprecated,-effects

Вам нужно удалить часть -effects, например:

grunt custom:-ajax,-deprecated

В противном случае селектор :animated не будет поддерживаться.

person Mathias Bynens    schedule 10.08.2012
comment
Don’t worry Я не был... Упс, я только что заметил, что ты разговариваешь сам с собой, а не со мной ;) - person yannis; 10.08.2012
comment
Из записи в блоге: Модульность: Если вы хорошо знаете зависимости jQuery вашего проекта, я предполагаю, что плагин анимирует вещи, поэтому он проверяет :animated? Или он не делает анимацию и нужен для какой-то другой цели? - person Dave Methvin; 10.08.2012
comment
@DaveMethvin Вот плагин: github.com/Wilto/Dynamic-Carousel/ blob/master/plugin.js Он использует jQuery#animate только в том случае, если переходы CSS не поддерживаются, но он использует селектор :animated в любом случае. - person Mathias Bynens; 10.08.2012