ios webView自动识别浅谈
2019-02-28 本文已影响0人
有梦才可以远航
ios webView自动识别属性dataDetectorTypes,经过测试,默认开启电话识别,当web页码中出现8位及以上连续数字时,webView默认识别它为电话号码。
\
对电话自动识别:
\
下图对时间、日期、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