【问题标题】:Remove html code from page URL从页面 URL 中删除 html 代码
【发布时间】:2017-03-24 09:46:47
【问题描述】:

我需要使用 URL 显示网页。从该页面中,我想从该 html 页面中删除一个链接控件。是否可以?我用这种代码打开它。

NSString *urlAddress = @"http://myurl.com";
NSURL *url = [NSURL URLWithString:urlAddress];

【问题讨论】:

  • 再解释一下?您是否尝试在WKWebView 中显示网页,但您想先修改页面内容?
  • 我在 UIWebview 中显示。是的,我想在显示之前编辑 html。
  • DonMag 的回答能给你解决方案吗?
  • NO.. 我认为我在将 JS 嵌入目标 C 时遇到问题。但我有办法处理他的回答。

标签: ios objective-c webview xcode8


【解决方案1】:

如果要禁用所有链接,请参阅 user3182143 的答案...

如果您只想禁用特定链接,您仍然可以使用这些方法 - 您只需评估 shouldStartLoadWithRequest:(NSURLRequest *)requestrequest 部分并决定是否返回 YES 或 NO

如果你想让一个特定的链接看起来不同,你就需要修改html。有几种方法可以做到这一点,但我们确实需要更多关于您正在尝试做什么的信息。

您是否正在显示一个特定的网页?您需要做的就是更改该 ONE 页面中的 ONE 链接,就完成了?您是否正在显示一系列页面?您对页面有任何控制权吗?以此类推。

我建议您开始搜索和阅读有关 uiwebview insert htmluiwebview insert javascript 的信息

【讨论】:

    【解决方案2】:

    我们可以做到。

    首先我们应该了解UIWebViewDelegate methods

    首先创建 BOOL

    ViewController.h

    @property (nonatomic) BOOL ret;
    

    ViewController.m

    @synthesize ret;
    

    在下面的 delagte 方法中将 BOOL 设置为 NO

    - (void)webViewDidFinishLoad:(UIWebView*)webView {
       // Sent after a web view finishes loading a frame. 
       ret = NO;
    }
    

    如果我们在下面的委托方法中返回 NO,这将阻止用户查看链接

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
       return ret:
    }
    

    Dave DeLong's Disable Link in UIWebView answer

    Removing hyper links from a URL shown in UIWebView

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-28
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 2017-05-08
      • 2018-07-18
      • 2012-01-07
      相关资源
      最近更新 更多