如何在移动野生动物园中禁用电话号码检测

时间:2010-09-06 07:20:51

标签: iphone web-applications mobile-safari

我试图在我的网络应用程序的safari中禁用电话号码检测,但它仍然显示由数字组成的7个字符串作为电话号码。我使用了苹果公司提供的meta标签但没有快乐。

<meta name="format-detection" content="telephone=no">

其他人遇到这个问题并解决它?

感谢。

更新:看起来它没有检测到safari中的电话号码,而是当我将页面保存为图标并从主屏幕运行时。

5 个答案:

答案 0 :(得分:13)

您是在UIWebView中加载它吗?如果是这样,则需要为dataDetectorTypes设置属性。 e.g:

webView.dataDetectorTypes = UIDataDetectorTypeNone

有效的检测器类型为here.

在苹果网站上搜索UIWebView,了解如何在那里设置属性。

-Kevin

答案 1 :(得分:6)

我们的JQM / Cordova应用程序遇到了类似的问题。我们在应用程序中内置了一个计算器,每当数量超过7位数时,数据将显示为蓝色,下方有下划线,当您点击数据时,会弹出一个弹出窗口,并为您提供调用选项。我们简单地说 正如开篇问题&amp;它奏效了。

在这里添加一些想法,以防其他人遇到类似的问题,Safari将7个数据作为电话号码检测。

答案 2 :(得分:5)

行。在经历了相当多的困难之后,我想我发现了一个奇怪的工作。使用dataDetectorTypes的问题是它将禁用整个uiwebveiw的电话号码检测。

在跨度和标签上尝试datadetectors =“off”和x-apple-data-detectors =“false”属性后,我终于偶然发现了一些似乎阻止电话号码检测的内容。

如果我将文本包装在带有href =“#”的标签中,苹果似乎不管它。

答案 3 :(得分:2)

试试此代码,

webView.dataDetectorTypes = UIDataDetectorTypeNone;

这可能会对你有帮助。

答案 4 :(得分:1)

尝试将此添加到YourProjectAppDelegate.m

// ...

- (void)webViewDidStartLoad:(UIWebView *)theWebView 
{
    theWebView.dataDetectorTypes = UIDataDetectorTypeAll ^ UIDataDetectorTypePhoneNumber;    
    return [ super webViewDidStartLoad:theWebView ];
}

// ...

我的诀窍..