Сообщение Cannot read property ‘msie’ of undefined

Два вероятных случая могут генерировать данное сообщение в консоли браузера.

Раннее обращение к js плагину

Те или иные свойства могут быть недоступны, если вы обращаетесь к методам и свойствам до того как они определены. В данном случае обращение к свойству $.browser.msie происходит до полной готовности jQuery.

Решение простое — оберните ваш код в реализацию события ready.

Использование версии jQuery > 1.9

Если вы используете версию jQuery выше 1.9, то свойства jQuery.browser там просто нет, т.к. оно считается устаревшим, начиная с версии 1.3, а в версии 1.9 было удалено из библиотеки.

Никто не мешает его добавить самостоятельно.

Есть более комплексное решение в виде скрипта миграции. Там учитываются многие ушедшие в историю свойства и методы jquery, помогая вебмастерам пользоваться старыми скриптами.

Просто подключите его как один из плагинов jQuery.

Страница проекта на github — https://github.com/jquery/jquery-migrate

Написать комментарий

Мало букафф? Читайте есчо !

Управление размерами autocomplete ui widget в Drupal

Октябрь 25, 2023 г.

Попался мне UI баг, когда autocomplete слой с результатами поиска оказывался больше по ширине, чем input элемент, к которому он был прикреплен. Не ясен был алгоритм, по которому вычислялась ширина слоя. В одних случаях это происходило корректно, ...

Читать

Связанные списки select с получением данных по ajax

Декабрь 15, 2016 г.

В прошлый раз я показывал как можно "на лету" создавать списки html select, данные которых содержались в специальном javascript массиве. Подготовить такой ...

Читать

 

Комментарии к «Сообщение Cannot read property ‘msie’ of undefined»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Много комментариев в “Сообщение Cannot read property ‘msie’ of undefined”

  1. oila:

    Очень, ОЧЕНЬ выручили! Спасибо, от всей души за наводку на jquery-migrate!