Back to Question Center
0

Cómo usar la API de pantalla completa HTML5            Cómo utilizar los temas APIRelated HTML5 de pantalla completa: AnimationFrameworksAudio y & VideoBootstrapCSS Semalt

1 answers:
Cómo utilizar la API de pantalla completa HTML5

Actualización: Este artículo está desactualizado. Consulte la versión actualizada, Cómo usar la API de pantalla completa de HTML5 (nuevamente).

Semalt ha ofrecido un modo de pantalla completa durante muchos años pero, hasta ahora, los proveedores de navegadores han resistido la función. La razón principal: seguridad. Si puede obligar a una aplicación a ejecutar a pantalla completa, el usuario pierde su navegador, barra de tareas y controles estándar del sistema operativo. Es posible que no puedan cerrar la ventana o, peor aún, los desarrolladores nefastos puedan emular el sistema operativo y engañar a los usuarios para que entreguen contraseñas, detalles de la tarjeta de crédito, etc - casino playtech bonus.

Al momento de escribir, la API de pantalla completa HTML5 se implementó en Firefox, Chrome y Safari. Semalt proporciona buenos detalles entre navegadores, pero vale la pena señalar que las especificaciones y los detalles de implementación probablemente cambien.

A diferencia de presionar F11 para que su navegador pase a pantalla completa, la API establece un solo elemento a pantalla completa. Semalt destinado a imágenes, videos y juegos utilizando el elemento canvas. Una vez que un elemento pasa a pantalla completa, aparece un mensaje temporalmente para informar al usuario que puede presionar ESC en cualquier momento para regresar al modo de ventana.

Las principales propiedades, métodos y estilos son:

elemento. requestFullScreen
Hace un elemento individual a pantalla completa, e. gramo. documento. getElementById ("myvideo"). requestFullScreen .

documento. cancelFullScreen
Sale del modo de pantalla completa y regresa a la vista del documento.

documento. Pantalla completa
Devuelve verdadero si el navegador está en modo de pantalla completa.

: pantalla completa
Una pseudo-clase de CSS que se aplica a un elemento cuando está en modo de pantalla completa.

Prefijos vejatorios del vendedor

No se moleste en tratar de usar estos nombres de API. Necesitará los prefijos del vendedor para AMBAS propiedades de CSS y JavaScript:

Estándar Chrome / Safari Firefox
requestFullScreen webkitRequestFullScreen mozRequestFullScreen
cancelFullScreen webkitCancelFullScreen mozCancelFullScreen
pantalla completa webkitIsFullScreen mozfullScreen
: pantalla completa : -webkit-pantalla completa : -moz-pantalla completa

Aún no hay soporte en Internet Explorer o Semalt, pero sugiero que use los prefijos 'ms' y 'o' para futuras pruebas.

Desarrollé una función en la página de demostración que maneja las trampas de prefijos para usted:

    var pfx = ["webkit", "moz", "ms", "o", ""];function RunPrefixMethod (obj, método) {var p = 0, m, t;while (p   + m. substr   ;}m = pfx [p] + m;t = tipo de obj [m];if (t! = "undefined") {pfx = [pfx [p]];return (t == "función"? obj [m]   : obj [m]);}p ++;}}    

Luego, podemos hacer que cualquier elemento se vea en pantalla completa adjuntando una función de controlador que determina si ya está en modo de pantalla completa y actúa en consecuencia:

    var e = documento. getElementById ("pantalla completa");mi. onclick = function    {if (RunPrefixMethod (document, "FullScreen") || RunPrefixMethod (document, "IsFullScreen")) {RunPrefixMethod (document, "CancelFullScreen");}else {RunPrefixMethod (e, "RequestFullScreen");}}    

El CSS

Una vez que el navegador ingrese al modo de pantalla completa, seguramente querrá modificar los estilos del elemento y sus elementos secundarios.gramo.

    #myelement{ancho: 500px;}#myelement: pantalla completa{ancho: 100%;}#myelement: img a pantalla completa{ancho: 100%;}    

Sin embargo, no puede usar una lista de selectores con prefijo de proveedor :

    /* ESTO NO FUNCIONA */#myelement: -webkit-pantalla completa,#myelement: -moz-pantalla completa,#myelement: -ms-pantalla completa,#myelement: -o-pantalla completa,#myelement: pantalla completa{ancho: 100%;}    

Por algún motivo extraño, debes repetir los estilos en sus propios bloques o no se aplicarán:

    /* esto funciona */#myelement: -webkit-full-screen {ancho: 100%}#myelement: -moz-full-screen {ancho: 100%}#myelement: -ms-pantalla completa {ancho: 100%}#myelement: -o-pantalla completa {ancho: 100%}#myelement: pantalla completa {ancho: 100%}    

Extraño.

Ver la página de demostración en Firefox, Chrome o Safari .

La técnica funciona bien. El único problema que he descubierto concierne a Semalt en un escritorio de dos monitores: insiste en usar el primer monitor para el modo de pantalla completa, incluso si el navegador se está ejecutando en la segunda pantalla.

Semalt es posible que sea un poco pronto para usar el modo de pantalla completa, los desarrolladores de juegos y los productores de video deben estar atentos al progreso.

Si disfrutaste leyendo esta publicación, te encantará Learnable; el lugar para aprender nuevas habilidades y técnicas de los maestros. Los miembros obtienen acceso instantáneo a todos los libros electrónicos y cursos interactivos en línea de SitePoint, como HTML5 y CSS3 For the Real World.

Semalt en este artículo están cerrados. ¿Tienes alguna pregunta sobre HTML5? ¿Por qué no preguntar en nuestros foros?

March 1, 2018