Отключение детекторов данных для определенного элемента HTML в UIWebView - PullRequest
14 голосов
/ 21 января 2010

Кто-нибудь знает, возможно ли отключить детекторы данных для телефонных номеров, адресов электронной почты и т. Д. В UIWebView, только для определенных элементов HTML?

Я бы хотел, чтобы детекторы были активны для большей части контента, загруженного в UIWebView, но отключить его в определенных областях.

Если это возможно, я предполагаю, что это будет достигнуто путем использования атрибута HTML в загруженном контенте (вместо установки какого-либо свойства UIWebView), например,

<html>
  <body>
    <h1 datadetectors="off">Header text with number 9123 3456</h1>
    <p>Body text with number 9872 4567</p>
  </body>
</html>

В этом примере номер в

будет определен как номер телефона из-за установки webview.dataDetectorTypes = UIDataDetectorTypeAll, тогда как номер в

не будет.

Ответы [ 3 ]

7 голосов
/ 05 августа 2016

вы должны использовать <meta name = "format-detection" content = "telephone=no">

Надеюсь, это поможет

6 голосов
/ 22 марта 2011

можно поставить атрибут

x-apple-data-detectors="false"

но, к сожалению, это работает только для тегов. В итоге я воспользовался этим решением:

<a href="#" x-apple-data-detectors="false">666-777-777</a>

Помимо отключения «обнаружения» телефонных номеров, это также предотвращает запуск адресов и другого обнаружения.

1 голос
/ 18 января 2011

Если вы управляете веб-контентом, вы можете использовать jscript (через jquery) для написания ваших собственных детекторов данных. Если вы не управляете контентом, вы можете вставить и выполнить jscript, используя stringByEvaluatingJavaScriptFromString: после вызова webViewDidFinishLoad:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...