Как я могу сделать обратный отсчет "оставшихся символов" как тот в Твиттере с jQuery? И также ограничьте вход текстовой областью.
Я использовал Aaron Russell's просто счетное плагин jQuery с успехом; Хотя, если бы я мог написать его, я бы разработал его немного по-другому (автоматическое создание Counter div, используя атрибут Maxlength Data, а не вариант плагина и т. Д.).
Простое использование:
$('#my_textarea').simplyCountable();
Расширенное использование:
$('#my_textarea').simplyCountable({
counter: '#counter',
countable: 'characters',
maxCount: 140,
strictMax: false,
countDirection: 'down',
safeClass: 'safe',
overClass: 'over',
thousandSeparator: ','
});
Сделайте span
и textarea
и дайте им уникальные селекторы (с использованием идентификатора или класса), как это делается:
<textarea class="message" rows="2" cols="30"></textarea>
<span class="countdown"></span>
И затем сделайте функцию обновления вида so:
function updateCountdown() {
// 140 is the max message length
var remaining = 140 - jQuery('.message').val().length;
jQuery('.countdown').text(remaining + ' characters remaining.');
}
И заставьте эту функцию работать, когда страница загружена и когда сообщение изменено:
jQuery(document).ready(function($) {
updateCountdown();
$('.message').change(updateCountdown);
$('.message').keyup(updateCountdown);
});
Посмотрите пример и посмотрите источник. jQuery делает такие вещи очень простыми.