SEO SMM Арбитраж трафика Инструменты Программирование Веб-разработка Графика Софт Cоц. сети Скрипты сайтов Боты
хостинг
Vibix - надеждый видео-балансир

Telegram Expert

Купить резедентные прокси

Визуальное ограничение текста для текстового поля



Во время ввода текста в поле, пользователь будет видеть как заполняется прогресс-бар, а так же сможет точно узнать количество введённых символов и какой лимит вообще.

В общем, меньше слов, больше дела.

Установка:


Установка, на примере текстового поля в комментариях на uCoz.

Вам нужно в ПУ > Управление дизайном > Форма добавления комментариев, найти следующее:
Это текстовое поле, с атрибутом name="message"

У меня это вот:


Далее добавляете ему какой-нибудь уникальный id, у меня id будет for_limiter, и под ним добавляете код:
<!-- У дива ниже должен быть тоже уникальный ид, у меня это in_limiter -->
<div id="in_limiter" class="limiter">
<div class="limiter--progress">
<div class="limiter--progress-bg"></div>
</div>
<div class="limiter--counter"></div>
</div>


В самом низу всего кода, добавляете скрипт
Обратите внимания на комментарии в коде
let textarea = $('#for_limiter'), // Ваш textarea
limiter = $('#in_limiter'), // тот блок под textarea
vallimit = textarea.attr('maxlength') || 5000, // ограничение, изначально берётся от атрибута maxlength, если его нет то 5000 символов
limitWarn = vallimit-30; // -30 символов от лимита - момент, на котором выдаст предупреждение, что скоро лимит кончиться.

limiter.find('.limiter--counter').text(0+' / '+vallimit);
textarea.on('input propertychange', function(){
let vallen = $(this).val().length,
classes = vallen == vallimit ? ' --limited' : vallen >= limitWarn ? ' --warning' : '';
limiter.attr('class', 'limiter'+classes);
limiter.find('.limiter--progress-bg').css('width', (100 / (vallimit / vallen)).toFixed(2)+'%');
limiter.find('.limiter--counter').text(vallen+' / '+vallimit);
});


Ну и стили
.limiter {display: block; width: 100%;}
.limiter .limiter--progress {display: block; width: 100%; height: 5px; background: #d7dfe3; border-radius: 2px; position: relative; overflow: hidden; margin: 5px 0 2px;}
.limiter .limiter--progress-bg {display: block; width: 0; background: #95a5a6; max-width: 100%; height: inherit; position: absolute; left: 0; transition: background-color .2s linear;}
.limiter.--warning .limiter--progress-bg {background: #e67e22;}
.limiter.--warning .limiter--counter {color: #e67e22;}
.limiter.--limited .limiter--progress-bg {background: #e74c3c;}
.limiter.--limited .limiter--counter {color: #e74c3c;}


На этом всё.
685
Рейтинг:
Сохранить или отправить

Оставить комментарий

Партнёрские программы

Смотреть все
1WIN ПАРТНЕРКА

1WIN ПАРТНЕРКА

1 403
  • 40
Партнерские программы / Гемблинг партнерки
Обзор Partners House для монетизации сайтов и лендингов + отзывы вебмастеров

Обзор Partners House для монетизации сайтов и лендингов + отзывы вебмастеров

795
  • 0
Арбитраж трафика / Партнерские программы / PUSH партнерки
Смотреть все

Магазин

Смотреть все
Купить
Бот для продажи VPN 3X-UI для Telegram

Бот для продажи VPN 3X-UI для Telegram

Telegram-бот для продажи VPN! Автоматизированный бот для продажи вашего...

Купить
Мониторинг хайп проектов на движке DLE

Мониторинг хайп проектов на движке DLE

В данном скрипте есть возможность включить функцию чтобы пользователи сами...

Купить
Скрипт казино с 5 классическими играми.

Скрипт казино с 5 классическими играми.

Разработчики онлайн-казино, хотим поделиться отличной новостью: в январе мы...

Купить
Customer WishList / Избранные товары покупателей

Customer WishList / Избранные товары покупателей

Данный модуль позволяет просматривать избранные товары пользователей. Есть...

Купить
Меняем заголовок и favicon

Меняем заголовок и favicon

Меняет favicon и title, при переходе пользователя на другую вкладку в браузере....

Смотреть все

Сервисы

Смотреть все
Смотреть все