在ios中显示div的键盘与contenteditable =“true”

时间:2012-03-19 07:17:55

标签: javascript ios contenteditable

我有一个contenteditable =“true”的div。如何通过javascript设置焦点(如果可以在纯js,没有jquery)?

3 个答案:

答案 0 :(得分:7)

在iOS 6之前,这是不可能的,但幸好他们已经改变了。一般情况下,您无法为网站执行此操作,但如果您在应用程序中嵌入了UIWebView,则可以立即执行此操作:

UIWebView *webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
webView.keyboardDisplayRequiresUserAction = NO;

然后您的element.focus()会正常工作,并根据需要调出键盘。

http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIWebView_Class/Reference/Reference.html#//apple_ref/occ/instp/UIWebView/keyboardDisplayRequiresUserAction

有关iOS 6及更改内容的更多信息WebKit的:

http://developer.apple.com/library/ios/#releasenotes/General/RN-iOSSDK-6_0/_index.html#//apple_ref/doc/uid/TP40012166-CH1-SW19

答案 1 :(得分:1)

假设contenteditable div的id是'editableDiv',

document.getElementById('editableDiv').focus();

**更新 你可以试试div里面的东西吗?

<script>
function showKeyboard() {
    document.getElementById('content').focus();
}
</script>
<body onLoad="showKeyboard()">
    <div id="content" contenteditable="true" height="1000">&nbsp;</div>  
</body>

答案 2 :(得分:0)

现在在iOS中是不可能的:( https://github.com/jquery/jquery-mobile/issues/3016