Сообщение 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

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

Улучшаем реакцию меню

Апрель 28, 2016 г.

Pull-down - выпадающим меню, работающим на javascript, никого не удивить. Мне не нравится, что оно закрывается мгновенно, как курсор мыши выходит за край выпавшей секции. Немного промахнешься (особенно это часто случается с последними пунктами), и меню ...

Читать

Ошибка в Drupal: once is not a function

Май 8, 2023 г.

В Drupal 9/10 нет jQuery плагина once(), потому при использовании этой функции вы увидите сообщение о том, что once - не является функцией. Плагин удобен, но его не сложно заменить в коде буквально парой вставок. Он работает по следующему алгоритму ...

Читать

Когда jQuery.find может не работать

Декабрь 8, 2012 г.

Обычно, "проблема" возникает с данными, получаемыми через асинхронные запросы (ajax-запрос). Вы пытаетесь выполнить jQuery.find() для полученных данных, а функция возвращает пустой объект. В примере ниже, мы пытаемся извлечь содержимое HTML контейнера ...

Читать

Обратный порядок перебора элементов jQuery each()

Сентябрь 17, 2019 г.

Полезное ноу-хау для тех кто пользуется jQuery. Функция $.each() производит перебор элементов по порядку, но иногда требуется выполнить операции в обратном порядке. jQuery ничего не предлагает для реализации нашей задачи, но это и не требуется, ...

Читать
 

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

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



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

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

  1. oila:

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