优雅处理电话URL

时间:2015-07-22 17:25:48

标签: javascript html5 tel

我的网站上有一个链接:

<a href="tel:0123456789">call me, maybe</a>

这对于能够启动呼叫的浏览器来说非常棒,但随着河马的优雅而降级。类似的东西:

<h1>The address wasn't understood</h1>

我想连接onclick监听器并显示一个带有该号码的弹出窗口。但是,虽然监听器运行,但浏览器仍然跟随url(因此显示错误),我认为没有可靠的方法来检测是否存在tel:协议处理程序。

这有一个很好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

我认为这样的事情会在您查看设备是否自动包装电话号码时起作用。

<div id="testTel" style="display:none">+1 (111) 111-1111</div>
var isTelSupported = (function () {
    var div = document.querySelector("#testTel"),
        hasAnchor = document.getElementsByTagName("a").length > 0;
        div.parentNode.removeChild(div);
    return hasAnchor;
}());
alert(isTelSupported);