JavaScript permet d'écrire HTML dans le document pendant est en train d'être chargé en utilisant document.write("string here")
. Cependant, il est préférable d'utiliser l'objet window.location
, qui contient les différentes parties de l'URL. Dans votre cas, vous souhaitez définir window.location.href
(l'URL complète) sur la destination de redirection. Vous pouvez essayer de rechercher un navigateur mobile à l'aide d'une expression régulière, également appelée expression rationnelle.
Sans les dix secondes de retard: (L'expression rationnelle est celle de Wikipedia utilise pour la redirection vers son site mobile.)
if(/(Android|iPhone|iPod|webOS|NetFront|Opera Mini|SEMC-Browser|PlayStation Portable|Nintendo Wii|BlackBerry)/.test(navigator.userAgent)) {
window.location.href = "page_you_want_to_redirect_to";
}
En JavaScript, une expression rationnelle est un objet. Sa méthode .test
renvoie une valeur booléenne (true/false) indiquant si l'expression rationnelle correspond à l'argument de chaîne.
Avec les dix secondes de retard:
if(/(Android|iPhone|iPod|webOS|NetFront|Opera Mini|SEMC-Browser|PlayStation Portable|Nintendo Wii|BlackBerry)/.test(navigator.userAgent)) {
setTimeout(function() {
window.location.href = "page_you_want_to_redirect_to";
}, 10000);
}
Qu'est-ce que setTimeout? setTimeout est la fonction JavaScript permettant d'exécuter du code après une temporisation en millisecondes [10000 ms = 10 s]. Le code à exécuter est contenu dans function() { ... }
, ce qui crée une fermeture (une caractéristique essentielle de JavaScript).
Quelle condition envisagez-vous de vérifier dans votre instruction 'if'? En d'autres termes, qu'essayez-vous vraiment de faire? –
Dans le cas si statment, je vais vérifier navigator.userAgent pour vérifier si l'utilisateur provient de navigateur mobile et si cela est vrai, je vais le rediriger vers Mypage.aspx autre sage je ne fais rien (Rester dans la même page) . – Tony