我正在使用 webView 来显示文本内容,并且我正在尝试使用 javascript 来突出显示用户选择的文本。这在 contentEditable = yes
时成为可能,但每当用户点击任何文本时也会调出键盘。
如何让 contentEditable = yes
,但不显示键盘以使文本可编辑?
编辑:这是我用来突出显示的代码
- (void)highlight {
NSString *currentColor = [webView stringByEvaluatingJavaScriptFromString:@"document.queryCommandValue('backColor')"];
if ([currentColor isEqualToString:@"rgb(255, 255, 0)"]) {
[webView stringByEvaluatingJavaScriptFromString:@"document.execCommand('backColor', false, 'white')"];
} else {
[webView stringByEvaluatingJavaScriptFromString:@"document.execCommand('backColor', false, 'yellow')"];
}
}
我在 this 上找到了它教程。
最佳答案
您需要使用 WebKitFramwork 中的 WebEditingDelegate。然后你可以这样做:
-(BOOL)webView:(WebView *)shouldBeginEditingInDOMRange:(DOMRange *)range: {
return NO;
}
这是 documentation .
关于javascript - 即使我需要设置我的 webView contentEditable=true,我怎样才能阻止键盘出现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21681456/