uncaught top read que property not error cannot javascript jquery jquery-tools

javascript - top - Unkeught TypeError: no se puede leer la propiedad ''msie'' de undefined-jQuery tools



undefined javascript error (10)

Como no tengo planeado soportar versiones antiguas de MS IE, simplemente reemplacé todas las referencias a browser.msie con false . No es una buena solución, lo sé, pero funciona para mí.

(En realidad, aparecieron como !browser.msie , que podría omitirse de las condiciones).

Recibo el siguiente error en la consola de desarrollo de Chrome:

Uncaught TypeError: Cannot read property ''msie'' of undefined

.browser entendido, es porque .browser ahora está en desuso en jQuery, pero estoy usando la última versión de las herramientas de jQuery y todavía está dando el error, revisé el archivo js y está allí.

¿Cómo puedo evitar esto para que no dé el error?


El método $.browser se ha eliminado a partir de jQuery 1.9.

jQuery.browser() removed

El método jQuery.browser() ha quedado obsoleto desde jQuery 1.3 y se elimina en 1.9. Si es necesario, está disponible como parte del complemento jQuery Migrate. Recomendamos usar la detección de características con una biblioteca como Modernizr.

- Guía de actualización de jQuery Core 1.9 .

Como se indica en la Guía de actualización, puede intentar usar el complemento jQuery Migrate para restaurar esta funcionalidad y dejar que jQuery Tools funcione.


Puedes ver esta solución por AJ. Es bastante sencillo, simplemente copie y pegue las siguientes líneas de código.

jQuery.browser = {}; (function () { jQuery.browser.msie = false; jQuery.browser.version = 0; if (navigator.userAgent.match(/MSIE ([0-9]+)/./)) { jQuery.browser.msie = true; jQuery.browser.version = RegExp.$1; } })();

Referencia :


Recibí este error al usar JQuery 1.10 y JQuery UI 1.8. Pude resolver este error actualizando a la última interfaz de usuario de JQuery 1.11.4.

Pasos para actualizar JQuery UI desde Visual Studio:

  • Navegue a Proyecto o Solución
  • Haga clic derecho: "Administrar paquetes NuGet"
  • A la izquierda, haga clic en la pestaña "Paquetes instalados"
  • Busque "JQuery UI (biblioteca combinada)" y haga clic en Actualizar
  • Si lo encuentra, selecciónelo y haga clic en Actualizar
  • Si no se encuentra, búsquelo en la pestaña "Online> nuget.org" a la izquierda y haga clic en instalar. Si la versión anterior de la versión de Jquery UI aún existe, se puede eliminar del proyecto

Reemplace su JS con

<script src="//code.jquery.com/jquery-1.10.2.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

link origen


Use como golpe

uso este comando y resuelvo

"UnEught TypeError: no se puede leer la propiedad ''msie'' of undefined" Error

if (/1/.(0|1|2)/.(0|1|2)/.test($.fn.jquery) || /^1.1/.test($.fn.jquery)) { return; }


Use como golpe

$(function (a) {

. . . . .entonces en su función puede usar la propiedad msie como

if (a.browser.msie) { } else { $(settings.current).after(Uploadelement); }

buena suerte


Use la siguiente etiqueta de script en su archivo jsp / js:

<script src="http://code.jquery.com/jquery-1.9.0.js"></script> <script src="http://code.jquery.com/jquery-migrate-1.2.1.js"></script>

esto funcionará con seguridad.


Uso el código siguiente después de incluir el archivo js y está funcionando ahora.

<script src="js/jquery-ui.min.js" type="text/javascript"></script> <script type="text/javascript"> jQuery.browser = {}; (function () { jQuery.browser.msie = false; jQuery.browser.version = 0; if (navigator.userAgent.match(/MSIE ([0-9]+)/./)) { jQuery.browser.msie = true; jQuery.browser.version = RegExp.$1; } })(); </script>


Aquí está el error de jQuery Tools en GitHub . Puedes probar uno de los parches.

editar : no me parece que las herramientas jQuery reciban mucha ayuda. Personalmente, no comenzaría un nuevo proyecto con una dependencia de esa biblioteca a menos que estuviera preparado para asumir el soporte yo mismo.