我正在寻找以下问题的解决方案。我们希望在下周发送一个 html 邮件,目前遇到一些问题。这是我们第一次尝试这样做,主要区别在于它现在包含链接到我们 facebook 的按钮。
邮件程序是响应式的,因此我们正在寻找一种解决方案,该解决方案将在浏览器中打开网站的桌面版本,并在从移动设备查看时检查是否安装了该应用程序并打开它,如果没有打开链接而是在浏览器中。
通过广泛的在线搜索和 Stack Overflow,我开始意识到 Android 和 iOS 允许此操作的方式有所不同。请参阅下面我迄今为止尝试过的解决方案:
.mobile-link {
display: none;
}
@media screen and (max-device-width: 767px) and (orientation: portrait) {
.desktop-link {
display: none;
}
.mobile-link {
display: block;
}
}
@media screen and (max-device-width: 1024px) and (orientation: landscape) {
.desktop-link {
display: none;
}
.mobile-link {
display: block;
}
}
<a class='mobile-link' onclick='
setTimeout(function () { window.location = 'www.facebook.com/profileid'; }, 2500);
window.location = 'fb://facewebmodal/=pagename';'>
<img src='some.url' />
</a>
<a class='desktop-link' href='www.facebook.com/profileid'>
<img src='some.url' />
</a>
这在 iPhone 上不起作用,尽管我之前尝试过(我将其更改为适用于 Android,但仍然不起作用)。在我之前的尝试中,我有:
<a class='mobile-link' onclick='
setTimeout(function () { window.location = 'www.facebook.com/profileid'; }, 2500);
window.location = 'fb://profile/id';'>
<img src='some.url' />
</a>
适用于 iOS 但不适用于 Android。
据我所知,Facebook 似乎改变了用户以这种方式定期定位应用的方式。
任何人都可以在这种链接中为我提供最新的同时针对 iOS 和 Android 应用程序的方法吗?
最佳答案
这里有几个链接,您可以在其中找到合适的答案:
首先您需要检查浏览器是在移动设备上还是在桌面上,然后根据您的要求应用以下链接代码。这是浏览器检测链接:- Detecting a mobile browser
2) How to check if an app is installed from a web-page on an iPhone?
3) iPhone browser: Checking if iPhone app is installed from browser
如果您还需要其他任何东西,请告诉我。
关于javascript - 如果应用程序存在,链接到打开的 facebook 应用程序,否则网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40038363/