基于设备的链接重定向

时间:2015-10-26 21:37:05

标签: javascript url-redirection

我在电子邮件中找到了一个链接,该链接指向url xxx.xxxxxxx.xx / zzz上的视频,其中zzz是该视频的唯一ID。我需要根据用户的设备将用户重定向到正确的位置。如果他们来自iPhone,它将引导他们进行深层链接。否则,将它们指向原始网址。

我有以下内容将在电子邮件链接的页面中,但不太正确:

var host = document.location.hostname + document.location.pathname;

if(navigator.userAgent.match("iPhone") || navigator.userAgent.match("iPad")){
  deep link to redirect to here
}
else {
  window.location.replace(host);
}

如图:

电子邮件链接 - >设备重定向 - >如果是iphone || ipad {转到深层链接}否则转到视频链接

2 个答案:

答案 0 :(得分:1)

所以找出答案:

拥有以下格式的原始链接:

<html>
<a href="newsletter-redirect.html?video=http://xxx.xxxxxx.xx/mXp">Video</a>
</html>

并且newsletter-redirect.html页面将包含以下javascript:

var video = document.location.search.split("?video=");

if(navigator.userAgent.match("iPhone") || navigator.userAgent.match("iPad")){
  window.location.replace("deep link code");
}
else {
  window.location.replace(video[1]);
}

如果用户来自非ios设备,则会将用户重定向到链接http://xxx.xxxxx.xx/mXp

答案 1 :(得分:0)

这应该可以解决您的问题。不要忘记.match()使用需要转义字符的正则表达式。然后在你检测到iphone,ipod,ipad之后你只需要使用window.location属性进行重定向。

document.getElementBy("xxxx").innerHTML=myTable;