格式化电话:与电话分机链接的正确方法是什么?我看到了一些不同的建议,但是我不清楚哪种方法是确定的方法。
<a href="tel:5555555,555">555-5555 ext. 555</a>
使用android 2.3.4,我无法通过拨打电话分机的链接拨打电话。
RFC3966表示这是正确的格式:
extension = ";ext=" 1*phonedigit
但是我不清楚1 *是什么意思,也无法使这种格式正常工作。
1 *是RFC3966使用的ABNF生成语法,表示扩展字段由1个或多个数字组成。
使用的ABNF参见http://en.wikipedia.org/wiki/Augmented_Backus%E2%80%93Naur_Form。
您可以尝试<a href="tel:5555555p555">555-5555 ext. 555</a>
p暂停1秒钟
[语法以RFC2234中描述的ABNF表示法编写。
tel
URI的语法是(缩写):
telephone-uri = "tel:" telephone-subscriber
telephone-subscriber = global-number / local-number
global-number = global-number-digits *par
local-number = local-number-digits *par context *par
par = parameter / extension / isdn-subaddress
extension = ";ext=" 1*phonedigit
"tel:"
和";ext="
标记是文字字符串。1*phonedigit
表示下列产品中的一个或多个(例如phonedigit
)。
据我所知,电话号码应标记为:
<a href="tel:5555555;ext=555">555-5555 ext. 555</a>
Disclaimer:我从未使用过电话号码URI,也不知道浏览器支持是什么样的。我什至不确定这是否是ext
参数的适当用法。
还请注意,RFC3966指出:
本地号码必须具有
phone-context
参数,用于标识其有效范围。
这应该起作用:
<a href="tel:+18881234567">Make a call</a>
通常在开头使用+会更容易(要求您输入国家/地区代码,但要保证电话可以正确识别该号码)。