javascript - mostrar - function console log
Javascript: ¿Por qué a veces alert() no funciona pero console.log() sí? (8)
De vez en cuando, me enfrento a un error muy intrigante. Mi código de javascript no muestra una alerta (msg) durante la ejecución, pero si uso una console.log (msg) aparece en la consola. ¿Qué podría evitar que se muestre alerta ()?
Muchas gracias
A mi entender, alerta () siempre se muestra a menos que sea repetitiva, en cuyo caso se le pregunta si desea continuar mostrando alertas.
Supongo que los detalles sobre cómo se maneja esto dependen de su navegador. ¿Quieres compartir más detalles? :)
Aquí está mi código simple:
scoops=5;
while(scoops<6){
alert ("ice creame is getting low");
}
console.log("life without icecream is not same");
Cuando lo ejecuto, el navegador me muestra que la referencia erro.alert no está definida
En Firefox: vaya a Opciones -> Contenido y desmarque la casilla de verificación "bloquear ventanas emergentes". Reiniciar navegador.
Este es un problema muy común, y todos hemos enfrentado este problema al menos una vez. La razón por la que alert () no funciona es porque anteriormente ha marcado la casilla de verificación "evitar que esta página cree una conexión de llamada adicional".
echemos un vistazo a este código.
<script type="text/javascript">
var js_name = [''elem1'', ''elem2'']
for (var i = 0; i < js_name.length; i++) {
alert(js_name[i]);
};
</script>
Habrá dos cajas de alerta si ejecuta el código. Si marca la casilla de verificación "evitar que esta página cree dialoug adicional" y luego vuelve a actualizar la página, no volverá a aparecer el cuadro de alerta.
La solución es que necesita cerrar esa página web y volver a abrirla en el navegador (no es necesario que cierre el navegador completo). Supongo que está utilizando Chrome. Internet Explorer o FireFox no tienen esta característica de casilla de verificación.
Esto también puede suceder en Firefox si tiene Dev Tools abierto y el modo de diseño responsivo habilitado. Suena como si fuera un error .
Esto también sucede en ColdFusion. Si utiliza cualquier lugar después de que el script etiquete una etiqueta cflocation (en lugar de location.href), la alerta no se mostrará.
Otra razón por la cual el navegador puede ignorar las alert
, confirm
y avisos es que si el documento está en un iframe
que tiene un atributo sandbox
sin valores allow-modals
en su valor.
Por ejemplo, Firefox ignora esto en silencio, pero Chromium muestra una advertencia.
Si anula la función de alerta para que no funcione
alert = function()
{
...
};
alert(''hello'') // won''t show any alert