Detecting HTML <a> click-to-call support in Javascript
Asked Answered
K

1

16

There are two ways to have click-to-call links in HTML

  • <a href="wtai://wp/mc;+1800229933</a> WTAI style (Nokia, others)

  • <a href="tel:+1-800-275-2273">Call Apple Customer Support at 1-800-275-2273</a>. TEL style (Apple)

How one can

  • detect which format is supported by current user agent in Javascript?

  • Is it possible to do the detection without relying the user agent string

More info

Ketene answered 27/8, 2012 at 12:22 Comment(2)
Related: #2872590 the accepted answer there might give you some good ideas as well. :)Obla
there's also "callto:" which skype still uses.Policeman
C
11

Maximiliano Firtman has a great article on how to create click-to-call links for mobile browsers. He states that the tel: protocol is supported by almost every mobile device, including: Safari on iOS, Android Browser, webOS Browser, Symbian browser, Internet Explorer, Opera Mini and low-end devices browsers.

Because of the wide support of the tel: protocol, I would suggest just use the tel: protocol. To support Nokia I would check if the navigator.userAgent contains Nokia footprint. If so, replace tel: to wtai://wp/mc;

If you can use jQuery, the Javascript could look something like:

if (/(Series60|Nokia)/i.test(navigator.userAgent)){
  $("a[href^='tel:']").each(function(){
    this.href = this.href.replace("tel:", "wtai://wp/mc;");
  });
}
Costermansville answered 28/8, 2012 at 17:19 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.