WordPress 3.0.4, jQuery и плагины в IE8: ошибки jQuery 1.4.X в IE8
Странно ведут себя плагины на базе jQuery в моём блоге. Различные вариации Lightbox (WP-Slimbox2 и так далее) не работают с совершенно различными эффектами, с бессистемными (на мой взгляд) сбоями работает Gravatar Hovercards. Не могу утверждать, что все плагины на базе jQuery не работают, но, как минимум, все реализации Lightbox точно.
Попробуем найти виновника и решить проблему.
Запускаем средства разработки в IE8 (Developer Tools, F12), нажимаем – Start Debugging. Видим код, на который IE8 ругается:
Будете смеяться, но: если запустить отладчик (по F12), затем проделать всё, что хочется с проблемным блогом, отладчик будет останавливаться по ошибке. Но если продолжать исполнение, а не прерывать сценарий – всё вполне успешно работает.
Итак, наконец-то дошёл до сути проблемы. IE8 теперь не игнорирует ошибки в JScript, а останавливает исполнение сценария. И ошибки вылетают в том числе в jQuery. Мой WordPress на сегодня использует jQuery 1.4.2. Идём на сайт: http://jquery.com/, там уже доступна 1.4.4. Пробуем заменить… С версией 1.4.4 jQuery результат остался прежним.
Попробовал скачать стабильную версию 1.3.2. Вы не поверите – клоны Lightbox успешно заработали, ошибок более не выдают. Однако, Gravatar Hovercards отказался работать напрочь.
Итак, как это ни грустно признавать, jQuery 1.4.2, 1.4.4 и видимо все 1.4.X вплоть до 1.4.4 генерируют ошибку в IE8. Протестировал свой сайт на jQuery 1.3.2, работает успешно.
Итак, рецепт на сегодняшний день для IE8: использовать в WordPress jQuery 1.3.2.
P.S. Осталось разобраться, почему же с jQuery 1.3.2 не работает Gravatar Hovercards. Этот плагин использует jquery.md5.js. Но уже в следующий раз.
RSS комментарии
Обратная ссылка