Lo que estoy tratando de lograr es: a fuerza de escala 1.0 cuando el ipad está en modo horizontal, y 0.75 cuando es en el retrato, pero con de usuario deshabilitada escala. He intentado todas las combinaciones de meta viewport de la etiqueta, y nada funcionó:

  • cuando el usuario escalable es no, el paisaje funciona bien, pero no escala a 0,75 en el retrato, no importa cómo puedo establecer máximo y mínimo escala
  • cuando el usuario escalable es , funciona bien a veces, pero como no se mucho de agregar contenido con ajax, a veces cuando la página se hace más largo, la página de escalas para que quepa toda la página en la pantalla, y quiero evitar que

Es así, ¿hay una manera de forzar a que el escalado número exacto? O desactivar el escalado cuando la longitud de la página los cambios? (El ancho de la página debe ser siempre de 1024px, no es diferente de css para una orientación diferente y no width=device-width, solo me falta la ampliación)

OriginalEl autor Mario | 2011-06-16

4 Comentarios

  1. 6

    Patricio respuesta es definitivamente útil, aquí es más probado la versión

    var checkOrientation;
    checkOrientation = function() {
      var viewport;
      viewport = document.querySelector("meta[name=viewport]");
      if (window.orientation === 90 || window.orientation === -90) {
        return viewport.setAttribute("content", "width:device-width, initial-scale=1.0, user-scalable=1");
      } else {
        return viewport.setAttribute("content", "width:device-width, initial-scale=0.6, user-scalable=1");
      }
    };
    window.onorientationchange = function() {
      return checkOrientation();
    };
    checkOrientation();

    Y no te olvides de poner esto en el documento de la cabeza:

    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

    Tenga en cuenta que, uno de la diferencia, es la comas en lugar de puntos y comas en los argumentos

    En realidad, la omisión de la etiqueta meta en la cabeza, mientras que el uso de la secuencia de comandos, parece que se han resuelto algunos problemas para mí. Realmente no puedo decir que entiendo aunque. Parece que la estática de la etiqueta de compitió con el javascript de alguna manera.

    OriginalEl autor standup75

  2. 4

    No hay manera de lograr esto únicamente con una meta viewport de configuración.

    Sin embargo, es posible detectar la orientación con javascript, y es posible cambiar el meta viewport-ajuste con javascript, así que usted puede tener un script de gatillo en la orientación del cambio y configuración diferente de la ventanilla.

    Tal vez algo como esto (no probado):

    window.onorientationchange = function() {
      viewport = document.querySelector("meta[name=viewport]");
      if (window.orientation == 90 || window.orientation == -90) {
        viewport.setAttribute('content', 'width=device-width; initial-scale=1.0; user-scalable=1');            
      } else {
        viewport.setAttribute('content', 'width=device-width; initial-scale=0.75; user-scalable=0');            
      } 
    }

    OriginalEl autor Patrick Fabrizius

  3. 1

    No te olvides de poner el máximo de la escala=1 en el javascript, y para el uso correcto del «width=device-width»:

    var checkOrientation;
    checkOrientation = function() {
      var viewport;
      viewport = document.querySelector("meta[name=viewport]");
      if (window.orientation === 90 || window.orientation === -90) {
        return viewport.setAttribute("content", "width=device-width, initial-scale=1.0, maximum-scale=1, user-scalable=1");
      } else {
        return viewport.setAttribute("content", "width=device-width, initial-scale=0.6, maximum-scale=1, user-scalable=1");
      }
    };
    window.onorientationchange = function() {
      return checkOrientation();
    };
    checkOrientation();

    OriginalEl autor Danetag

  4. 0

    O el uso de su lenguaje del lado del servidor para detectar la presencia de iPad a través de la USER_AGENT.

    Este es un snippit… su respuesta puede tener mérito, pero por favor explicar cómo desea utilizar el USER_AGENT cadena para producir lo que el OP está pidiendo.

    OriginalEl autor Phil LaNasa

Dejar respuesta

Please enter your comment!
Please enter your name here