它可以在ios10或更早的版本中工作,但不能在ios11中工作?

- (void)jumpToHash:(WKWebView *)wkWebView {
NSString * jsJumpToHash =[NSString stringWithFormat:@"function jumpToHash(){window.location.hash ='#%@hash';};",self.hashLocation];

[wkWebView evaluateJavaScript:jsJumpToHash completionHandler:^(id Result, NSError * error) {}];

NSString *jsFun = @"jumpToHash()";

[wkWebView evaluateJavaScript:jsFun completionHandler:^(id Result, NSError * error) {}];

self.hashLocation = @"";
}

最佳答案

在iOS11中,window.location.hash不支持滚动到位置。

请使用以下代码将网页滚动到所选位置

[self.webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"var hashElement=document.getElementById('%@');if(hashElement) {hashElement.scrollIntoView();}", href]];

10-06 15:45