检查<a href=“tel:5555555">支持 [英] Check if <a href="tel:5555555"> is supported

查看:19
本文介绍了检查<a href=“tel:5555555">支持的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

Is it possible to check if a phone number hyperlink is supported by a browser? EG: Check if

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

会起作用.

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

I'm trying to avoid the "Cannot open page. Safari cannot open the page because the address is invalid." type messages on things like iPod/iPad etc.

谢谢.

推荐答案

在桌面版 Skype 使用callto:"规范而不是tel:"

On desktop Skype uses the "callto:" spec instead of "tel:"

我认为您可以为此使用 css.

I think you could use css for this.

只需添加一些@media 规则:

Just add some @media rules:

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

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

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

Then you could define two elements in 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 代码来检查设备是否为手持设备:

For a more complex code you could add some javascript code to check if the device is a handheld one:

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);
   });
}

还有一个很好的答案这里来自ghepting 关于如何检测是否安装了Skype.

Also there is a nice answer here by ghepting on how to to detect if skype is installed or not.

这篇关于检查&lt;a href=“tel:5555555"&gt;支持的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆