检查是否<a href="tel:5555555"> is supported</a>

时间:2013-05-29 09:35:22

标签: javascript jquery html mobile hyperlink

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

<a href="tel:555555555">Call us on 555555555</a> 

会奏效。

我试图避免“无法打开页面.Safari无法打开页面,因为地址无效。”在iPod / iPad等类型上键入消息。

感谢。

1 个答案:

答案 0 :(得分:2)

在桌面上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; }
}

然后你可以在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> 

对于更复杂的代码,您可以添加一些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);
   });
}

here还有一个很好的答案ghepting,关于如何检测是否安装了Skype。