¿Cómo puedo usar JavaScript para establecer el nivel de zoom en el safari móvil?¿Cómo puedo usar JavaScript para establecer el nivel de acercamiento en el safari móvil?
Respuesta
Prueba esto:
<meta name="viewport" content="width=device-width; initial-scale=1.0; user-scalable:no;">
Por lo que yo sé, puede cambiar el factor de zoom el tamaño del texto cambiando el estilo '-webkit-text-size-adjust' del cuerpo elemento.
Comprobar este enlace para más información:
Necesito poder configurar el nivel de zoom de todo el navegador a través de JavaScript. Específicamente, necesito capturar un doble toque y configurar el nivel de zoom en una cantidad que me parezca apropiada. No quiero cambiar los tamaños de los elementos DOM para lograr esto. El usuario debe poder cambiar de un zoom de pellizco para hacer doble clic en el zoom sin problemas. – JoshNaro
Entonces, ¿qué quieres que se haga de forma diferente a los gestos originales de doble toque/pinch para Safari? –
[ACTUALIZADO ] Parece que desea capturar dobles grifos en Safari móvil. Puede hacerlo manejando el evento touchend
, o usar un marco disponible, tal como se proporciona en this site.
Tome un vistazo a la demo revisado: http://jsbin.com/atayo4/20
<p id="tap">double tap to zoom</p>
<input id="zoomWidth" type="text" value="400" />
<p id="feedback"></p>
$(document).ready(function(){
$('#tap').doubletap(
// double tap handler
function(e) {
$('#feedback').addClass('red').html('double tap! Zoom width: ' + $('#zoomWidth').val());
var zoomWidth = $('#zoomWidth').val();
// zoom with the new width
$('meta[name="viewport"]').attr('content', 'width=' + zoomWidth + ', user-scalable:no');
$('#zoomWidth').val(parseInt(zoomWidth, 10) - 25);
},
// single tap handler
function(e) {
$('#feedback').removeClass('red').html('single tap! Zoom width: ' + $('#zoomWidth').val());
},
// double tap delay, default 500
400
);
});
he intentado manipular las escalas mín/máx y el ancho de la etiqueta meta con JavaScript en vano. En lugar de tratar de establecer el nivel de zoom con el código (estoy pensando que no es posible), voy a crear pequeños cuadros invisibles sobre mi imagen relativamente grande. Esto permitirá a los usuarios acercar (y alejar) mediante doble toque nativo en secciones interesantes de la imagen.
También traté de simular un evento de doble toque utilizando 'document.createEvent (" TouchEvent ");', '.initTouchEvent (...)', 'document.createTouch (...)' y todo ese jazz, sin embargo, sin éxito. Los eventos son reconocidos por el motor de JavaScript, pero no por el controlador de vista de Safari. –
Esto fue hace un tiempo, pero creo que acabamos cambiando anchuras y alturas y cargando imágenes de mayor calidad como una alternativa. Es decir, hacemos un zoom artificial. – JoshNaro
Solución interesante, gracias por el seguimiento. Me acabo de dar cuenta de que uno puede cambiar el nivel de zoom manipulando la etiqueta meta [name = viewport]. No es una transición suave, pero quizás uno puede leer las dimensiones de la ventana y la posición de desplazamiento y luego ajustar sucesivamente el ancho y los parámetros de escala máxima/mínima. –
- 1. ¿Cómo puedo inspeccionar el objeto ventana para safari móvil?
- 2. Lea UDID de Iphone con javascript en el safari móvil
- 3. Perfil móvil Safari (iPad) javascript?
- 4. ¿Se puede autocapitalizar desactivar con javascript en el safari móvil?
- 5. Seleccionar texto en el dispositivo móvil Safari en el iPhone
- 6. ¿Puedo usar JavaScript para establecer el atributo 'nombre'?
- 7. Establecer el foco del cuadro de texto en el safari móvil
- 8. Configuración del nivel de zoom en el navegador móvil
- 9. ¿Existe algún método alternativo para usar antes de la descarga en el safari móvil?
- 10. JavaScript DOM cambia en touchmove demorado hasta que el desplazamiento finalice en el dispositivo móvil Safari
- 11. Cómo encontrar (en javascript) el desplazamiento actual de "desplazamiento" en safari móvil/iphone
- 12. ¿Cómo puedo establecer el nivel de precisión para el bignum de Perl?
- 13. ¿Cómo establecer el registro de nivel para DEPURAR en Tomcat?
- 14. ¿Cómo puedo eliminar el estilo de borde de una entrada de texto en un safari móvil?
- 15. ¿Limitaciones del tamaño de la imagen en el safari móvil?
- 16. ¿Cómo se depura el javascript en Safari?
- 17. Ayúdenme a entender el tamaño del texto de Safari móvil
- 18. Doble toque en safari móvil
- 19. ¿Puedo establecer el valor para el atributo renderizado desde JavaScript?
- 20. ¿Cómo puede una aplicación nativa de iOS como Vimeo establecer cookies para Safari móvil?
- 21. Safari móvil Reflow sin cambiar el tamaño - comportamiento de error
- 22. Establecer el nivel de registro en Akka
- 23. Artefactos de línea en Safari móvil
- 24. Imágenes borrosas en el safari móvil iphone 4
- 25. ¿Cómo corregir problemas de representación de fuentes en Safari móvil?
- 26. href = tel: 555 enlace no funciona en el safari móvil
- 27. Cómo evitar el aumento de ancho después del cambio de orientación en el safari móvil
- 28. Cómo usar Javascript para establecer el valor de área de texto en un formulario en IE
- 29. setInterval pausa en iphone/ipad (Safari móvil) durante el desplazamiento
- 30. ¿Cómo se detecta el número de teléfono de detección en el safari móvil?
pero ¿puedes hacerlo en javascript? –
No es una respuesta sino una preocupación. ¿Qué sucede si el usuario deshabilita javascript en su dispositivo móvil? ¿Está apuntando solo a navegadores móviles usando Safari? – ngen