jquery - support - TypeError: $.browser no está definido
jquery support browser (9)
Coloqué el siguiente código HTML en mi código y esto borró el error $ .browser
<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>
Espero que esto te ayude
Estoy utilizando el cuadro combinado de imagen de caída de imagen para crear opciones de selección desplegable. Cuando ejecuto este código localmente en mi PC, todo funciona muy bien. Pero cuando lo ejecuto en los servidores de Go Daddy, el msdropdown se desactiva.
No funciona en ningún navegador. Firebug muestra el error como:
TypeError: $.browser is undefined
Por favor, ayúdame con esto.
echo <<<_START
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>profile</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="HAPedit 3.1">
<link rel="stylesheet" href="profile.css" type="text/css">
<link rel="stylesheet" type="text/css" href="dd.css" />
<link rel="stylesheet" href="javascript/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.0.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.0.js"></script>
<script type="text/javascript" src="jQuery.js"></script>
<script src="javascript/jquery-ui.js"></script>
<script type="text/javascript" src="javascript/drop.js"></script>
<script src="jquery.dd.min.js"></script>
<script type="text/javascript" src="jquery.blockUI3.js"></script>
<script type="text/javascript" src="javascript/req.js"></script>
<link rel="stylesheet" href="css/body.css" />
<script>
$(function() {
$( "#datepicker" ).datepicker({dateFormat: ''dd-mm-yy'', minDate: 0, maxDate: "+0M +5D"
});
});
</script>
<script type="text/javascript">
<!--
function otherSelect() {
var other = document.getElementById("otherBox");
if (document.getElementById("form3").place.options[document.getElementById("form3").place.selectedIndex].value == "other") {
other.style.visibility = "visible";
}
else {
other.style.visibility = "hidden";
}
}
//-->
</script>
</head>
<body id="body">
<div id="container">
<div class="header">
<a href="profile.php" class="logo">
<img title="Title" alt="Alter" src="images/logo.png" border="0" height="60px" width="200px">
</a>
<a style="text-decoration:none; margin-top:15px; font-family:Bookman Old Style; font-size:12px; color:#FFFFFF; font-weight:bold;" href="logout.php?id=''$session_id''" class="req">
Logout
</a>
<a href="notification.php?email=''$encrypted_string''" class="req1">
<img border="0" title="Notifications" alt="Notifications" src="images/notification.png" height="60px" width="60px"><div class="text1">$numbr</div>
</a>
<a href="request.php?email=''$encrypted_string''" class="req2">
<img border="0" title="requests" alt="Requests" src="images/request.png" height="60px" width="60px"><div class="text">$req</div>
</a>
</div>
<div id="navigation">
<div id="picture"><img src="$img">
<h1 id="display" style="margin-left:30px;">$name</h1><hr>
<table style="background-color:#81F781;font-family:Chaparral Pro,corbel; font- size:17px; color:#1C1C1C; width:100%;" border="1" cellpadding="25">
<tr><th>Requests($n)</th></tr></table>
</div>
</div></div>
<div style="margin-top: 90px;" id="conte">
_START;
echo <<<_START
</div>
<div id="accept" style="display:none">
<form method="post" id="form3" action="cnfrm.php">
<br><table border="0" style="width:100%;" cellspacing="4" cellpadding="4"><tr> <td style="font-family:Chaparral Pro,corbel; font-size:17px; color:#1C1C1C;">Meeting Date: <input type="text" id="datepicker" name="date"/></td>
<td style="font-family:Chaparral Pro,corbel; font-size:17px; color:#1C1C1C;">@ about<input type="text" id="time" size="3">AM<input type="radio" name="time2" id="time2" value="am"> | PM<input type="radio" name="time2" id="time2" value="pm"></td></tr>
_START;
echo <<<H
<tr><td valign="top" rowspan="2">
<select id="place" name="place" style="width:300px;" onchange="otherSelect()">
<option value="" data-description="Choose your meeting place" selected="selected">Meet me @</option>
<option value="LC" data-image="image/msdropdown/icons/meet.png" data-description="Limbdi Corner">L.C</option>
<option value="VT" data-image="image/msdropdown/icons/meet.png" data-description="Vishwanath temple">V.T</option>
<option value="H.G" data-image="image/msdropdown/icons/meet.png" data-description="Hyderabaad Gate">H.G</option>
<option value="D.G Corner" data-image="image/msdropdown/icons/meet.png" data-description="Dhanrajgiri Corner">D.G corner</option>
<option value="Library" data-image="image/msdropdown/icons/meet.png" data-description="IIT Library">Library</option>
<option value="other" data-image="image/msdropdown/icons/meet.png" data-description="Add your own...">Other place</option>
</select> </td></tr>
H;
Este problema se ha resuelto: msdropdown actualiza y descarga los últimos archivos.
Gracias a todos
En algún lugar, el código, ya sea su código o un complemento de jQuery, está llamando a $.browser
para obtener el tipo de navegador actual.
Sin embargo, a principios de año, la función $.browser
estaba en desuso . Desde entonces, se han presentado algunos errores en su contra, pero debido a que está en desuso, el equipo de jQuery ha decidido no corregirlos. He decidido no confiar en la función en absoluto.
No veo ninguna referencia a $.browser
en su código, por lo que el problema probablemente reside en uno de sus complementos. Para encontrarlo, mire el código fuente de cada complemento al que hizo referencia con una etiqueta <script>
.
En cuanto a cómo solucionarlo: bueno, depende del contexto. Por ejemplo, tal vez haya una versión actualizada del plugin problemático. O quizás puede usar otro complemento que haga algo similar pero que no dependa de $.browser
.
Lo resolví usando el enlace de migración jQuery especificado a continuación:
<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>
Reemplace sus archivos jquery con lo siguiente:
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script> <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
Resolví utilizando este jQuery para Github.
<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>
Por favor, consulte este enlace para más información. https://github.com/Studio-42/elFinder/issues/469
Solo incluye este script
http://code.jquery.com/jquery-migrate-1.0.0.js
después de incluir su archivo javascript jquery.
simplemente ponga el código $ .browser en su js
var matched, browser;
jQuery.uaMatch = function( ua ) {
ua = ua.toLowerCase();
var match = /(chrome)[ //]([/w.]+)/.exec( ua ) ||
/(webkit)[ //]([/w.]+)/.exec( ua ) ||
/(opera)(?:.*version|)[ //]([/w.]+)/.exec( ua ) ||
/(msie) ([/w.]+)/.exec( ua ) ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([/w.]+)|)/.exec( ua ) ||
[];
return {
browser: match[ 1 ] || "",
version: match[ 2 ] || "0"
};
};
matched = jQuery.uaMatch( navigator.userAgent );
browser = {};
if ( matched.browser ) {
browser[ matched.browser ] = true;
browser.version = matched.version;
}
// Chrome is Webkit, but Webkit is also Safari.
if ( browser.chrome ) {
browser.webkit = true;
} else if ( browser.webkit ) {
browser.safari = true;
}
jQuery.browser = browser;
$ (). live (function () {}); y jQuery.browser está indefinido en jquery 1.9.0 - $ .browser está en desuso en la actualización de jquery
Suena como si estuvieras usando una versión diferente de jquery 1.9 en GoDaddy, por lo tanto, cambia tu código o incluye el complemento de migración http://code.jquery.com/jquery-migrate-1.0.0.js
$.browser
ha sido eliminado de JQuery 1.9. Puedes usar el proyecto Modernizr lugar
http://jquery.com/upgrade-guide/1.9/#jquery-browser-removed
ACTUALIZACIÓN PARA APOYAR IE 10 Y IE 11 (versión TRIDENT)
Para completar la respuesta de @ daniel.moura, aquí hay una versión que admite IE 11 y +
var matched, browser;
jQuery.uaMatch = function( ua ) {
ua = ua.toLowerCase();
var match = /(chrome)[ //]([/w.]+)/.exec( ua ) ||
/(webkit)[ //]([/w.]+)/.exec( ua ) ||
/(opera)(?:.*version|)[ //]([/w.]+)/.exec( ua ) ||
/(msie)[/s?]([/w.]+)/.exec( ua ) ||
/(trident)(?:.*? rv:([/w.]+)|)/.exec( ua ) ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([/w.]+)|)/.exec( ua ) ||
[];
return {
browser: match[ 1 ] || "",
version: match[ 2 ] || "0"
};
};
matched = jQuery.uaMatch( navigator.userAgent );
//IE 11+ fix (Trident)
matched.browser = matched.browser == ''trident'' ? ''msie'' : matched.browser;
browser = {};
if ( matched.browser ) {
browser[ matched.browser ] = true;
browser.version = matched.version;
}
// Chrome is Webkit, but Webkit is also Safari.
if ( browser.chrome ) {
browser.webkit = true;
} else if ( browser.webkit ) {
browser.safari = true;
}
jQuery.browser = browser;
// log removed - adds an extra dependency
//log(jQuery.browser)