Ios 我可以从我的webview浏览器中创建一个链接来调用特定的函数吗

Ios 我可以从我的webview浏览器中创建一个链接来调用特定的函数吗,ios,webview,Ios,Webview,我们在创建webview组件时使用的地址字符串中使用本机地理位置数据。我们这样做的原因是,我们想检查位置,但不想使用浏览器位置功能,该功能每天都会弹出警报,询问我们是否可以使用您的位置 理想情况下,我希望能够使用新的位置数据创建一个新的webview组件,以响应单击webview组件中的链接。我知道我们可以通过一个链接调用应用程序,例如myappname://但是我可以向这个调用添加参数来触发某些事件,比如我们重新加载webview组件的函数吗 如果不能通过html中的链接完成,我想我必须在页面

我们在创建webview组件时使用的地址字符串中使用本机地理位置数据。我们这样做的原因是,我们想检查位置,但不想使用浏览器位置功能,该功能每天都会弹出警报,询问我们是否可以使用您的位置

理想情况下,我希望能够使用新的位置数据创建一个新的webview组件,以响应单击webview组件中的链接。我知道我们可以通过一个链接调用应用程序,例如myappname://但是我可以向这个调用添加参数来触发某些事件,比如我们重新加载webview组件的函数吗


如果不能通过html中的链接完成,我想我必须在页面上放置一个本机按钮并从那里调用它。

你可以这样做。首先,在HTML内容中设置link-like

设置WebView委托方法,如下所示:

-(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType
{
    if ( inType == UIWebViewNavigationTypeLinkClicked )
    {
        NSString *url = [NSString stringWithFormat:@"%@", [inRequest URL]];
        if([url hasSuffix:@"#SetCustomLocation"])
        {
            NSString *strURL = @"http://example.com?long=36.333&latt=-143.222"; //Set Custom URL with Lat/long Whatever you need
            NSURL *cURL = [NSURL URLWithString:[strURL tringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

            [[UIApplication sharedApplication] openURL:cURL];
        }
    }
    return YES;
}
问候