2009-11-04 11 views
5

Mobile Safari en el iPhone le permite especificar diferentes tipos de teclado para los cuadros de entrada de texto como se demuestra en el Safari How-To's for iPhone, here. Sin embargo, me pregunto si es posible cambiar el tipo de teclado que se muestra cuando se muestra un cuadro de diálogo de javascript().¿Es posible cambiar el tipo de teclado cuando se usa la función de aviso() de Javascript cuando se usa Mobile Safari en el iPhone?

Sé que puedo hacer rodar mi propia ventana emergente modal si es necesario, pero me gustaría saber si es posible utilizar la función integrada prompt() con un teclado diferente (numérico, en mi caso))

¿Alguna idea?

Respuesta

4

Estoy bastante seguro de que la respuesta es, lamentablemente, "no". Considere el siguiente experimento:

<html> 
<head> 
<script type="text/javascript"> 
    function doit() { 
    prompt("this is a test"); 
    } 
</script> 
</head> 
<body> 
<a href="javascript:doit();">Click me</a> 
</body> 
</html> 

Si pones eso en una página HTML y cargarlo en Safari Mobile, a continuación, convertir el teléfono en la vista horizontal, haga clic en el enlace, ¿qué esperas que suceda? Lo que esperaría que sucediera es que el cuadro de diálogo emergente aparezca en orientación horizontal con el teclado ancho. Lo que sucede en realidad es que Mobile Safari vuelve a la vista de retrato y abre el pequeño teclado, luego gira hacia atrás luego de que ingresas tu texto. (Por diversión, avise los resultados, la alerta también gira la pantalla ...) Tenga en cuenta que las personalizaciones de HTML 5 (tipo = "tel" o patrón = "[0-9] *") muestran correctamente los teclados de paisaje cuando corresponde.

Tenga en cuenta que esto no es a priori pruebas que no puede personalizar la apariencia del teclado, pero es un indicador muy fuerte de que el comportamiento de solicitud Javascript está atornillado sobre y no está bien integrado en el resto de la experiencia de usuario.

+1

> el comportamiento de las solicitudes de javascript está atornillado y no bien integrado en el resto de la experiencia del usuario Sí, esa es mi sensación también. *suspiro* –

Cuestiones relacionadas