我需要为移动设备建立一个网页。只有一件事我还没想明白:我怎么才能通过点击文本来触发一个电话?

是否有一个特殊的URL,我可以输入像mailto:标签的电子邮件?

设备特定的解决方案不是首选。

我知道iPhone会自动识别电话号码,并为此创建一个链接,但如果这也能用于图像,那就太好了……大多数移动设备也是如此。


当前回答

本质上,使用一个<a>元素,加上一个href attr,指向以tel:为前缀的电话号码。注意,加号可以用来指定国家代码,而连字符可以被简单地包括在人眼中。

MDN Web文档

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#Creating_a_phone_link

HTML <a>元素(或锚元素),连同它的href属性,创建了一个指向其他网页、文件、同一页面中的位置、电子邮件地址或任何其他URL的超链接。 […] 提供电话链接有助于用户查看网络文档和连接到手机的笔记本电脑。 <a href="tel:+491570156">+49 1570156 </a>

IETF的文档

https://www.rfc-editor.org/rfc/rfc3966

The tel URI for Telephone Numbers The "tel" URI has the following syntax: telephone-uri = "tel:" telephone-subscriber […] Examples tel:+1-201-555-0123: This URI points to a phone number in the United States. The hyphens are included to make the number more human readable; they separate country, area code and subscriber number. tel:7042;phone-context=example.com: The URI describes a local phone number valid within the context "example.com". tel:863-1234;phone-context=+1-914-555: The URI describes a local phone number that is valid within a particular phone prefix.

其他回答

为了完整起见,我想在这里补充一个答案。

<a href="tel:1234567">Call 123-4567</a>

在大多数设备上都可以正常工作。然而,在桌面上,这将显示为一个链接,当你点击它时,它什么也不做,所以你应该考虑使用CSS使它只在移动设备上有条件地可见。

此外,您应该知道Skype(相当流行)默认使用不同的语法(但可以参数化使用tel:)。

<a href="callto:1234567">Call 123-4567</a>

然而,我认为在最新的移动浏览器(我确定在Android上)现在tel语法应该提供一个可用的应用程序的弹出窗口,可以用来完成调用操作。

大多数现代设备都支持tel:方案。所以使用<a href="tel:555- 5555 -5555">555- 5555 -5555</a>,你应该可以开始了。

如果你想使用它的图像,<a>标签可以处理<img/>放置在它就像其他正常情况下:<a href="tel:555- 5555 -5555"><img src="path/to/phone/图标.jpg" alt="Call 555-5555 -5555" /></a>

可点击的智能手机链接代码:

下面的链接可以用来制作一个可点击的电话链接。您可以复制下面的代码,并将其粘贴到您的网页,然后编辑您的电话号码。此代码可能不适用于所有手机,但适用于iPhone, Droid / Android和黑莓。

<a href="tel:1-847-555-5555">1-847-555-5555</a>

电话号码链接可以与破折号一起使用,如上图所示,也可以不使用破折号,就像下面的例子一样:

<a href="tel:18475555555">1-847-555-5555</a>

也可以在链接中使用任何文本,只要电话号码设置为“tel:18475555555”,如下例所示:

<a href="tel:18475555555">Click Here To Call Support 1-847-555-5555</a>

下面是一个可点击的电话超链接,你可以查看。在大多数非手机浏览器中,这个链接会给你一个“网页无法显示”的错误,或者什么都不会发生。

注意:iPhone Safari浏览器将自动检测页面上的电话号码,并将文本转换为呼叫链接,而无需使用该页上的任何代码。

WTAI智能手机链接代码: WTAI或“无线电话应用程序接口”链接代码如下所示。此代码被认为是正确的移动电话协议,可以在Droid等智能手机上运行,但是,它可能不适用于iPhone上的Apple Safari,建议使用上述代码。

<a href="wtai://wp/mc;18475555555">Click Here To Call Support 1-847-555-5555</a> 

正确的URL方案是[number],所以你会这样做

<a href="tel:5551234567"><img src="callme.jpg" alt="Call 5551234567" /></a>

本质上,使用一个<a>元素,加上一个href attr,指向以tel:为前缀的电话号码。注意,加号可以用来指定国家代码,而连字符可以被简单地包括在人眼中。

MDN Web文档

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#Creating_a_phone_link

HTML <a>元素(或锚元素),连同它的href属性,创建了一个指向其他网页、文件、同一页面中的位置、电子邮件地址或任何其他URL的超链接。 […] 提供电话链接有助于用户查看网络文档和连接到手机的笔记本电脑。 <a href="tel:+491570156">+49 1570156 </a>

IETF的文档

https://www.rfc-editor.org/rfc/rfc3966

The tel URI for Telephone Numbers The "tel" URI has the following syntax: telephone-uri = "tel:" telephone-subscriber […] Examples tel:+1-201-555-0123: This URI points to a phone number in the United States. The hyphens are included to make the number more human readable; they separate country, area code and subscriber number. tel:7042;phone-context=example.com: The URI describes a local phone number valid within the context "example.com". tel:863-1234;phone-context=+1-914-555: The URI describes a local phone number that is valid within a particular phone prefix.