ios webView自动识别浅谈

ios webView自动识别属性dataDetectorTypes,经过测试,默认开启电话识别,当web页码中出现8位及以上连续数字时,webView默认识别它为电话号码。

\对电话自动识别:

应用截图1

\下图对时间、日期、email都会识别
应用截图2

关于dataDetectorTypes属性:

typedef NS_OPTIONS(NSUInteger, UIDataDetectorTypes) {
    UIDataDetectorTypePhoneNumber   = 1 << 0,          // 手机号码
    UIDataDetectorTypeLink          = 1 << 1,          // 网址   
    UIDataDetectorTypeAddress       = 1 << 2,          //地址
    UIDataDetectorTypeCalendarEvent = 1 << 3,          //日期
    UIDataDetectorTypeNone          = 0,               // 取消
    UIDataDetectorTypeAll           = NSUIntegerMax    // 识别全部
};

除了设置属性外,还可webView调用js代码取消自动识别

取消自动识别电话号码

 NSString *jsMeta = [NSString stringWithFormat:@"var meta = document.createElement('meta');meta.content='telephone=no,date=no,address=no,email=no';meta.name='format-detection';document.getElementsByTagName('head')[0].appendChild(meta);"];
    [webView stringByEvaluatingJavaScriptFromString:jsMeta];

欢迎互相学习Github

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。