<!doctype html> <html> <head> <title>page</title> <meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0"/> <meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-status-bar-style" content="black" /> </head> <body> <script> function goToPage() { var pageUrl = 'http://www.google.com/'; window.open(pageUrl); } </script> <div id="installBtn" onclick="goToPage()">go to page</div> </body> </html> The expected action is: when touch the div, a new window opens. This code works great in the iPhone's safari.But when I tap "+" -> "Add to Home Screen", and press "go to page", no window is opened, and the page loads in the same screen.How to force, by javascript, a new window to open in the standalone mode?
4 Réponses :
Voilà y aller! (Si vous en avez encore besoin)
<script> if(window.navigator.standalone === true) document.write('Standalone'); else document.write('Web browser'); </script>
Bienvenue dans la pile débordement :-) S'il vous plaît regarder Comment répondre . Vous devez fournir des informations pourquoi votre code résout le problème. Les réponses du code seulement ne sont pas utiles pour la communauté.
Eh bien c'est un message de 2012 mais assez juste! Ce code teste si le moteur Web est utilisé en mode autonome ou non. AFAIK uniquement soutenu par iOS
La question ci-dessous mentionne une solution JavaScript éventuelle des réponses votées en haut, qui construit l'élément d'ancrage et expédient l'événement "Cliquez sur" sur celui-ci.
Question: Force Link to Ouvrir dans Mobile Safari à partir d'une application Web avec JavaScript
Réponse: https://stackoverflow.com/a/8833025/1441046 p>
Alternativement si vous le pouvez Utilisez un élément d'ancrage (je sais que vous avez demandé comment procéder à JavaScript) Vous pouvez procéder comme suit: P>
<a id="installBtn" href="http://www.google.com/" target="_blank">go to page</a>
Cela fonctionne pour moi. Ne fonctionne pas lorsque vous le demandez à HTML, uniquement de JS.
window.open('[url]','_system');
Vous pouvez utiliser Childbrowser pour ouvrir en mode autonome
ou vous pouvez utiliser ce P>
window.location = url(your Url);