I'm looking to use the tel: uri scheme (rfc3966) to make phone numbers linkable on mobile devices in a web application, but I'd prefer to not link them on devices that can't handle the tel: scheme - desktops, or mobile devices without phone functionality (i.e. iPads!)
Is there some way to detect this? I'd prefer to avoid user agent sniffing, if possible.
The iPhone seems to have a canOpenURL function that apps can use to test this, but I'd like to get the same behaviour from Javascript.
There's no standard way of detecting browser support for the tel URI scheme.
You can however user-agent sniffing library, such as the excellent WURFL library which can detect this feature.