【问题标题】:Disabling visible links in UIWebView禁用 UIWebView 中的可见链接
【发布时间】:2017-09-08 00:05:38
【问题描述】:

我的应用中有许多 Web 视图,我需要小心允许更多的 HTML 链接。

我不允许在委托方法 shouldStartLoadWithRequest 中使用链接。这工作正常,除了一件事。在 Web 视图中,链接仍以蓝色突出显示。 So the user naturally thinks they are active links, but when selected, I disallow the link from the delegate method.这给用户带来了困惑。

有没有办法让我禁用链接颜色,所以当它包含 UIWebView 中的链接时,文本不会显示为蓝色?

【问题讨论】:

    标签: iphone cocoa-touch


    【解决方案1】:

    尝试injecting Javascript 进入 UIWebView 以更改链接的外观。

    从所有锚点中删除 href 应该会清除格式。

    如果您需要,这里有一些 Javascript 可以帮助您入门:

    for(a in document.getElementsByTagName("a")) { a.href= ""; }
    

    【讨论】:

      【解决方案2】:

      这样就可以了:

      self.webView.dataDetectorTypes = UIDataDetectorTypeNone;
      

      【讨论】:

        【解决方案3】:

        对于 Swift 3:

        尝试从webView.dataDetectorTypes中删除您不想显示为链接的类型

        webView.dataDetectorTypes.remove(UIDataDetectorTypes.all)
        

        【讨论】:

          猜你喜欢
          • 2011-01-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多