Tinc alguns problemes a l’intentar utilitzar el curtcircuit en una pàgina web que estic creant.
Estic tractant d’usar
document.webkitExitFullscreen() || document.mozCancelFullScreen() || document.exitFullScreen();
Però sembla aturar-se al primer intent, tot i que hagués pensat que continuaria després que el primer argument aparegui com indefinit.
Si simplement escric
document.mozCancelFullScreen()
llavors funciona bé
Em preguntava si algú podria assenyalar-me el que estic fent malament aquí La captura de pantalla es pren en firefox per cert. Gràcies per avançat
Respostes
4 per a la resposta № 1
El teu codi està intentant anomenada document.webkitExitFullscreen
i si retorna un valor fals, anomenada document.mozCancelFullScreen
, etc.
Però si document.webkitExitFullscreen
en si és undefined
obtindrà un error a l’intentar cridar, i el codi deixarà d’executar en aquest punt.
Potser:
var exitFullScreen = document.webkitExitFullscreen || document.mozCancelFullScreen || document.exitFullScreen;if (exitFullScreen) {exitFullScreen.call(document); // Just `exitFullScreen();` may work as well}
O alternativament:
.some(function(name) {if (document) {document();return true;}});
… el que evita tot el “necessito call
o no?”
2 per a la resposta № 2
El problema és que ja està trucant a la funció, de manera que si no existeix, obtindrà un error. Podries provar alguna cosa com:
(document.webkitExitFullscreen || document.mozCancelFullScreen || document.exitFullScreen)();