检查是否支持<a href="tel:5555555">

Str*_*_99 9 html javascript mobile jquery hyperlink

是否可以检查浏览器是否支持电话号码超链接?EG:检查是否

<a href="tel:555555555">Call us on 555555555</a> 
Run Code Online (Sandbox Code Playgroud)

将工作.

我试图避免"无法打开页面.Safari无法打开页面,因为地址无效." 输入iPod/iPad等信息.

谢谢.

Teo*_*Teo 3

在桌面版 Skype 上,使用“callto:”规范而不是“tel:”

我认为你可以使用 css 来实现这一点。

只需添加一些@media规则:

.telClass { display: none; }
.callToClass { display: block; } 

@media only screen and (max-device-width: 480px) {
    .tel-class { display: block; }
    .call-to-class { display: none; }
}
Run Code Online (Sandbox Code Playgroud)

然后你可以在 html 中定义两个元素:

<a href="tel:555555555" class="tel-class">Call us on 555555555</a> 
<a href="callto:555555555" class="call-to-class">Call us on 555555555</a> 
Run Code Online (Sandbox Code Playgroud)

对于更复杂的代码,您可以添加一些 JavaScript 代码来检查设备是否是手持设备:

if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
   var callToArray = document.getElementsByClassName('call-to-class');
   callToArray.forEach(function(c) {
      c.parentElement.removeChild(c);
   });
}
Run Code Online (Sandbox Code Playgroud)

这里还有一个很好的答案,关于如何检测 Skype 是否安装