如何在移动设备上为 contenteditable 元素启用自动大写
How to enable autocapitalization for contenteditable elements on mobile
我有一个 contenteditable div 用户可以在其中 post 发表评论:
<div contenteditable="true"></div>
但是,当您在移动设备上输入此字段时 phone,它不会自动将句子后的第一个字母大写。
在手机上,每个句子结束后的第一个字母应该大写。所以:
"This is a sentence. Now, the word 'now' should be capitalized"
我知道这可能只是输入字段的一个功能,但是有没有办法在 contenteditable 元素上 achieve/hack 这个?
如果您正在寻找 HTML/CSS 答案,Autocapitalise 全局属性就是您想要的。将 Autocapitalise 设置为 "on" 或 "sentences" 将使每个句子的第一个字母大写。
这是一个例子:
<input type="text" autocapitalise="on" />
不知何故我意识到自从我使用 Emojionearea 以来,自动大写就不起作用了。所以没有用autocapitalize初始化Emojionearea是我自己的错。
很抱歉留下这个细节。也许这个问题会对其他也在使用 Emojionearea 的人有所帮助。
正确的代码应该是:
Html
<div id='textField' contenteditable="true" ></div>
JS
$('#textField').emojioneArea({
placeholder: $(this).data("placeholder"),
pickerPosition: "bottom",
attributes: {
spellcheck: true,
autocapitalize: "on"
}
});
我有一个 contenteditable div 用户可以在其中 post 发表评论:
<div contenteditable="true"></div>
但是,当您在移动设备上输入此字段时 phone,它不会自动将句子后的第一个字母大写。
在手机上,每个句子结束后的第一个字母应该大写。所以:
"This is a sentence. Now, the word 'now' should be capitalized"
我知道这可能只是输入字段的一个功能,但是有没有办法在 contenteditable 元素上 achieve/hack 这个?
如果您正在寻找 HTML/CSS 答案,Autocapitalise 全局属性就是您想要的。将 Autocapitalise 设置为 "on" 或 "sentences" 将使每个句子的第一个字母大写。 这是一个例子:
<input type="text" autocapitalise="on" />
不知何故我意识到自从我使用 Emojionearea 以来,自动大写就不起作用了。所以没有用autocapitalize初始化Emojionearea是我自己的错。
很抱歉留下这个细节。也许这个问题会对其他也在使用 Emojionearea 的人有所帮助。
正确的代码应该是:
Html
<div id='textField' contenteditable="true" ></div>
JS
$('#textField').emojioneArea({
placeholder: $(this).data("placeholder"),
pickerPosition: "bottom",
attributes: {
spellcheck: true,
autocapitalize: "on"
}
});