У меня есть приложение, и я хотел бы перенаправить пользователей к различным страницам на основе того, откуда они перешли.
При навигации от веб-клипа не перенаправлять. При навигации от мобильного Safari перенаправьте к safari.aspx. При навигации отовсюду еще, перенаправьте к unavailable.aspx
Я смог использовать iPhone WebApps, есть ли способ обнаружить, как он был загружен? Главный экран по сравнению с Safari? определить, перешел ли пользователь от веб-клипа, но я испытываю затруднения при определении если пользователь, по которому проводят от мобильного Safari на iPhone или iPod.
Вот то, что я имею:
if (window.navigator.standalone) {
// user navigated from web clip, don't redirect
}
else if (/*logic for mobile Safari*/) {
//user navigated from mobile Safari, redirect to safari page
window.location = "safari.aspx";
}
else {
//user navigated from some other browser, redirect to unavailable page
window.location = "unavailable.aspx";
}
ОБНОВЛЕНИЕ : это очень старый ответ, и я не могу его удалить, потому что ответ принят. Проверьте невольный ответ ниже , чтобы найти лучшее решение.
У вас должна быть возможность проверить наличие подстроки «iPad» или «iPhone» в строке пользовательского агента :
var userAgent = window.navigator.userAgent;
if (userAgent.match(/iPad/i) || userAgent.match(/iPhone/i)) {
// iPad or iPhone
}
else {
// Anything else
}