Я использую контентные элементы div в своем веб-приложении, и я пытаюсь найти решение, позволяющее ограничить количество символов, разрешенных в этой области, и как только предел ударит, попытка ввода символов просто ничего не делает. Это то, что у меня есть до сих пор:
var content_id = 'editable_div';
//binding keyup/down events on the contenteditable div
$('#'+content_id).keyup(function(){ check_charcount(content_id, max); });
$('#'+content_id).keydown(function(){ check_charcount(content_id, max); });
function check_charcount(content_id, max)
{
if($('#'+content_id).text().length > max)
{
$('#'+content_id).text($('#'+content_id).text().substring(0, max));
}
}
Это ограничивает количество символов числом, указанным "max", однако, как только текст области задается функцией jquery.text(), курсор сбрасывается до начала области. Поэтому, если пользователь продолжает печатать, введенные символы будут вставлены в начале текста, и последний символ текста будет удален. Так что, действительно, мне нужен какой-то способ держать курсор в конце текста, пригодного для контента.