我想在HTML文档中将电话号码标记为可调用链接.我已经阅读了微格式方法,我知道,该tel:
方案将是标准的,但实际上没有实现.
Skype的定义,因为据我所知,skype:
并且callto:
,已经获得了后者的一些人气.我认为,其他公司有其他计划或跳上callto:
火车.
标记电话号码的最佳做法是什么,以便尽可能多的人使用VoIP软件只需点击链接即可接听电话?
奖金问题:有没有人知道紧急号码的并发症,如美国的911或德国的110?
干杯,
更新: Microsoft NetMeeting采用callto:
WinXP下的方案.这个问题表明,Microsoft Office Communicator将处理tel:
方案而不是处理方案callto:
.太棒了,雷德蒙!
更新2:两年半以后.这似乎归结为你想用这个数字做什么.在移动环境中,tel:
是要走的路.如果您认为您的用户更多是Skype用户(callto:
或者更有可能安装了Google Voice(tel:
),那么定位桌面取决于您.我的个人意见是,在使用时有疑问tel:
(符合@Sidnicious的回答).
更新3:用户@ rybo111指出,Chrome中的Skype同时也加入了这个tel:
行列.我无法验证这一点,因为手头都没有机器,但如果这是真的,那就意味着我们终于有了一个胜利者:
tel:
s4y.. 478
该tel:
方案在20世纪90年代后期使用,并于2000年初通过RFC 2806(2004年更彻底的RFC 3966废弃)进行了记录并继续得到改进.支持tel:
iPhone不是一个武断的决定.
callto:
虽然受Skype支持,但不是标准,除非专门针对Skype用户,否则应该避免使用.
我?我只是开始tel:
在你的页面上包含正确形成的URI(没有嗅探用户代理)并等待世界其他地方的手机赶上:).
示例:
1-847-555-5555
有人试过`href ="tel:// 1-555-555-5555"`格式?来自Tutsplus的人推荐它http://code.tutsplus.com/tutorials/mobile-web-quick-tip-phone-number-links--mobile-7667 (3认同)
这个例子不应该是:?注意初始1之前的+) (3认同)
callto:也适用于大多数其他VOIP电话系统,例如SwyxIt.只是在说'... (2认同)
根据我对tel:标签的使用经验,Skype要求国家代码的数字为+(例如英国数字为"+44")以正确解析数字.否则它只会打开Skype,但不会尝试拨号. (2认同)
Murat.. 73
我的测试结果:
拨电至:
Nokia Browser:没有任何反应
谷歌浏览器:要求运行Skype来拨打该号码
Firefox:要求选择一个程序来拨打该号码
IE:要求运行Skype来拨打该号码
联系电话:
诺基亚浏览器:工作
谷歌Chrome:没有任何反应
Firefox:"Firefox不知道如何打开这个网址"
IE:找不到网址
除此之外,Android 4.2.2(Nexus 4)上的Google Chrome的行为相同.让Android版Skype在后台运行甚至不会使callto:链接工作.简而言之,如果您想在一分钟内定位移动设备,则无法真正使用callto:链接. (2认同)
mordy.. 44
最好的选择是从tel开始:适用于所有手机
然后输入此代码,该代码仅在桌面上运行,并且仅在单击链接时运行.
我正在使用http://detectmobilebrowsers.com/来检测移动浏览器,您可以使用您喜欢的任何方法
if (!jQuery.browser.mobile) { jQuery('body').on('click', 'a[href^="tel:"]', function() { jQuery(this).attr('href', jQuery(this).attr('href').replace(/^tel:/, 'callto:')); }); }
所以基本上你涵盖了所有的基础.
tel:适用于所有手机,用号码打开拨号器
callto:在您的计算机上工作,从firefox,chrome连接到skype
该tel:
方案在20世纪90年代后期使用,并于2000年初通过RFC 2806(2004年更彻底的RFC 3966废弃)进行了记录并继续得到改进.支持tel:
iPhone不是一个武断的决定.
callto:
虽然受Skype支持,但不是标准,除非专门针对Skype用户,否则应该避免使用.
我?我只是开始tel:
在你的页面上包含正确形成的URI(没有嗅探用户代理)并等待世界其他地方的手机赶上:).
示例:
1-847-555-5555
我的测试结果:
拨电至:
Nokia Browser:没有任何反应
谷歌浏览器:要求运行Skype来拨打该号码
Firefox:要求选择一个程序来拨打该号码
IE:要求运行Skype来拨打该号码
联系电话:
诺基亚浏览器:工作
谷歌Chrome:没有任何反应
Firefox:"Firefox不知道如何打开这个网址"
IE:找不到网址
最好的选择是从tel开始:适用于所有手机
然后输入此代码,该代码仅在桌面上运行,并且仅在单击链接时运行.
我正在使用http://detectmobilebrowsers.com/来检测移动浏览器,您可以使用您喜欢的任何方法
if (!jQuery.browser.mobile) { jQuery('body').on('click', 'a[href^="tel:"]', function() { jQuery(this).attr('href', jQuery(this).attr('href').replace(/^tel:/, 'callto:')); }); }
所以基本上你涵盖了所有的基础.
tel:适用于所有手机,用号码打开拨号器
callto:在您的计算机上工作,从firefox,chrome连接到skype
正如人们所预料的那样,WebKit的支持也tel:
扩展到了Android移动浏览器--FYI
我保留这个答案是为了"历史性"的目的,但不再推荐它了.请参阅上面的@Sidnicious'回答和我的更新2.
因为它看起来像是callto和tel之间的平局,所以我想提出一个可能的解决方案,希望你的评论会让我重新回到光明之路上;-)
使用callto:
,因为大多数桌面客户端将处理它:
call me
然后,如果客户端是iPhone,请替换链接:
window.onload = function () { if (navigator.userAgent.match (/iPhone/i)) { var a = document.getElementsByTagName ("a"); for (var i = 0; i < a.length; i++) { if (a[i].getAttribute ('href').search (/callto:/i) === 0) { a[i].setAttribute ('href', a[i].getAttribute ('href').replace (/^callto:/, "tel:")); } } } };
对此解决方案有任何异议?我应该从最好开始tel:
吗?
Mobile Safari(iPhone和iPod Touch)使用该tel:
方案.
如何从iPhone上的网页拨打电话号码?