iPad で、tel: リンク、ポップアップを抑制

電話機能がない iPad では、<a> タグ href 属性に、"tel:"で始まるリンクを記述すると、
ポップアップが出てしまう。

  例) <a href="tel:09011111111">09011111111</a>

f:id:posturan:20160313230300p:plain



UIWebView @property(nonatomic) UIDataDetectorTypes dataDetectorTypes
これを、

  webView.dataDetectorTypes = UIDataDetectorTypeNone;

と書いても、<a>タグで書くリンクにでは有効にならず、

としても、ポップアップは出てしまう。

そこで、強引なやり方であるが、ページ読込完了、
-(void)webViewDidFinishLoad: ( UIWebView* ) webView 
の中で、次のように JavaScript を実行することで、強制的に、href 属性を削除すると
タッチしても、ポップアップが出なくなる。

   [ webview stringByEvaluatingJavaScriptFromString:@"var a = document.getElementsByTagName('a'); "
                                                     " for(i=0; i < a.length; i++){ "
                                                     "   if (a[i].href.search('tel:')==0){ "
                                                     "      a[i].removeAttribute('href'); "
                                                     "   } "
                                                     " } "
 ];