代码之家  ›  专栏  ›  技术社区  ›  Surreal Dreams

为移动浏览器设置电话链接的可靠方法是什么?

  •  18
  • Surreal Dreams  · 技术社区  · 14 年前

    我正在为移动浏览器开发一个快速页面。虽然手机浏览器(目标用户)之间的一致性很低,但我有一个电话号码,我希望能尽可能容易地从用户电话中拨出。链接似乎是显而易见的选择;因此我设置了以下内容:

    <a href="tel:+18881235467">1-888-123-5467</a>
    

    这在Android&BlackBerry浏览器等更高级的浏览器上似乎可以正常工作,在其他手机上则不那么可靠。任何建议,使这一联系工作一贯和或正确将不胜感激。

    仅供参考,这是一个免费的美国国内电话,但我想一些设备可能正在寻找一个更通用的格式。

    3 回复  |  直到 10 年前
        1
  •  11
  •   Bill    8 年前

    您使用的方法是“标准”的方法(即 RFC 3966 ). 如果移动浏览器不能正确地解释它,唯一明显的解决方法就是扩展或修改浏览器行为本身,这可能是您不想做或无权做的。

    我相信它在Windows设备(mobile explorer)、iPhone(safari)、Symbian以及黑莓(Blackberry)和安卓(Android)上都是受支持的。

    您是发现这些设备有问题,还是也支持其他手机?

    请注意,其他人似乎对iPhone和iPad有相反的问题,因为默认浏览器(Safari)会将任何看起来像电话号码的内容更改为链接:

    http://www.darowski.com/tracesofinspiration/2009/03/31/stop-iphone-from-incorrectly-auto-linking-phone-numbers/

        2
  •  9
  •   Surreal Dreams    14 年前

    我最终想到的是这样一个链接:

    <a href="wtai://wp/mc;18881235467">1-888-123-4567</a>
    

    到目前为止,这在每一款测试过的手机上都有效,包括Android、BlackBerry和一些 非常 笨重的旧手机。据我所知,链接的结构是这样工作的:

    WTAI引用无线电话应用程序接口。wp/指的是wtappublic函数。mc;是makeCall函数,当然还有电话号码。类似地,可以执行以下链接:

    <a href="wtai://wp/ap;18881235467">Add to addressbook: 1-888-123-4567</a>
    

    这是相同的,除了mc;已被ap;替换,ap;是指addPBEntry函数。这会将电话号码添加到您的通讯簿或类似的电话号码存储库中。

    这两个网站对我的研究很有帮助:

        3
  •  3
  •   Angela    12 年前

    我见过像yelp这样的大网站使用不同的方法来实现这一点,它们使用vcard和tel类:

    http://microformats.org/wiki/hcard

    <div class="vcard">
        <span class="tel">(555) 555-5555</span>
    </div>