我正在尝试获取在UIWebView中加载的URL的哈希片段,我尝试了它似乎不起作用的不同方法。
例如,如果UIWebView加载了“http://www.mysite.com/home#main”:
NSURL *url = [NSURL URLWithString:@"http://www.mysite.com/home#main"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
然后我想获得完整的网址,但它只返回“http://www.mysite.com/home”有3种不同的方法:
1:
NSString *currentURL = [webView.request.URL absoluteString];
2:
NSString *currentURL = [NSString stringWithFormat:@"%@",[[webView request] URL]];
3:
NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"window.location.hash"];
我缺少什么
答案 0 :(得分:2)
尝试NSString *fragment = [webView.request.URL fragment];
答案 1 :(得分:1)
[webview stringByEvaluatingJavaScriptFromString:@"window.location.hash"]
是我成功获取哈希片段的唯一方法
我在方法1和方法2上失败了
也许你的代码在其他地方错了......
答案 2 :(得分:0)
使用以下代码段
NSLog(@“Hash fragment:%@”,[NSString stringWithFormat:@“%@”,webview.request.URL.fragment]);
答案 3 :(得分:0)
我认为你应该检查一下,request.url.absolutestring在shouldStartLoadWithRequest上有片段,webViewDidFinishLoad。