禁用iPad桌面网页链接上的电话号码检测?
我正在开发一个Web应用程序,该应用程序将作为全屏应用程序从iPad上的桌面图标启动。 Apple documentation on phone links建议使用此元标记:禁用iPad桌面网页链接上的电话号码检测?
<meta name = "format-detection" content = "telephone=no">
但是,这似乎并不奏效。有没有其他的HTML/CSS/JavaScript机制来控制这种行为?
随机注入锚标签导致了我很多的CSS错误。
解决方法
一分劈,我发现工作是注入特殊的空格字符,但转化输出我的所有数据的思想不愉快伴我。这些角色带来了他们自己的问题。这样做会因AJAX和JavaScript转换而进一步复杂化。
再现
重现步骤:
- 打开的页面在iPad上的Safari
- 使用添加到主屏幕书签功能
- 启动的主屏幕图标
样页:
<!DOCTYPE html>
<html>
<head>
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name = "format-detection" content = "telephone=no">
<title>Telephone detect</title>
</head>
<body>
expected:
<a href="tel:1555555">1555555</a>
<br />
bad: 1555555
<br />
bad: 1555555
<br />
inconvenient: 1555555
</body>
</html>
注意
This question似乎有关,但缺乏细节,我不知道,如果行为是在iPhone上是相同的。这是一个Web应用程序,没有本地组件。 iPad版本3.2.2。
好吧,修复它..添加一个<a href link>
和样式它没有文字修饰...我在asp.net中使用asp:超链接控件,它在3.2上工作,所以不知道为什么它停在4.2,但使用标准的链接工作。
我欣赏这种努力,这个解决方案可能适合一些,但它引入了其他需要克服的问题(比如将事情变成制表符;可访问性问题 - 这些东西仍然需要在其他浏览器上工作)。 – McDowell 2010-12-05 14:06:53
meta标签在asp.net中适用于我。我的猜测是,它不适用于OP,因为HTML格式不正确。非IE浏览器,Mozilla浏览器存在格式错误的XML/Html问题。变化
<meta name = "format-detection" content = "telephone=no">
到
<meta name = "format-detection" content = "telephone=no" />
标记是HTML 5,其中`/`对[元素](http://dev.w3.org/html5/spec/Overview.html#void-elements)没有影响,比如`meta`。我不再在这个领域工作,也没有iPad测试,所以无法检查[spec]的行为(http://dev.w3.org/html5/spec/Overview.html#start-标签)。 – McDowell 2011-07-21 17:42:24
将这个电话链路负载后
if (navigator.userAgent.match(/(iPhone|Android|BlackBerry)/)) {
//this is the phone
} else if (navigator.userAgent.match(/(iPod|iPad)/)) {
$('a[href^=tel]').click(function(e){
e.preventDefault();
});
} else {
//this is the browser
$('a[href^=tel]').click(function(e){
e.preventDefault();
});
}
为什么第二个块需要?它不是和else块做同样的事吗? – webXL 2013-09-17 18:06:18
的meta标签将工作:
<meta name="format-detection" content="telephone=no" />
这是Safari浏览器没有正确显示您的更新页面。对页面进行其他文本更改并刷新,并且更改将显示。如果您已经以这种方式查看,只需添加meta标签即可显示页码,并将该编号解释为电话号码。
供参考:缩进代码4格式化的空间。 – McDowell 2014-07-17 08:11:20
注意:自从我发布此问题以来,已经有好几年了,我无法评论此问题是否存在于更新的软件版本中,也无法验证任何提议的解决方案。 – McDowell 2014-07-17 08:13:44