Прогресс-бар предела сообщений в мини-чате
Скрипт заполняет прогресс бар по мере ввода сообщений.
Сделан на основе стандартного укозовского скрипта. 1) Установка довольна проста, идём в мини-чат->Форма добавления сообщений и в самый конец перед последним endif вставляем этот код:
Code
<br><progress id='jeuwu27' value="0" max="$MAX_MESSAGE_LEN$" simv_left="Осталось $MAX_MESSAGE_LEN$ символов" style="margin-top:-10px;width:100%;height:15px;"></progress>
<script>$('#mchatBtn').css('height','62px');$('#mchatMsgF').css('height','60px');
function countMessLength(){
var rstz = $('#mchatMsgF').val().length;if (rstz<0){rstz=0;$('#mchatMsgF').val($('#mchatMsgF').val().substr(0,$MAX_MESSAGE_LEN$));}$('#jeuwu27').attr('value',rstz)
var rst = $MAX_MESSAGE_LEN$-$('#mchatMsgF').val().length;if (rst<0){rst=0;$('#mchatMsgF').val($('#mchatMsgF').val().substr(0,$MAX_MESSAGE_LEN$));}$('#jeuwu28').html(rst);$('#jeuwu27').attr('simv_left','Осталось '+rst+' символов')
if(rst<=50){$('#mchatMsgF').removeClass('yellow').addClass('red')}
else if(rst>50&&rst<=150){$('#mchatMsgF').removeClass('red').addClass('yellow')}
else if(rst>150){$('#mchatMsgF').removeClass('yellow').removeClass('red')}
}
</script>
2) Далее добавляем в css эти две строчки
Code
.red{background:rgba(255, 50, 50, 0.2)}
.yellow{background:rgba(255, 216, 0, 0.3)}
Можно подправить цифры 150 и 50 если хочется, это количество символов после ввода которых будет активироваться сначала желтый, а затем красны фон соответственно, для предела в 200 символов, можно установить 20 вместо 50 и 80 вместо 150.
Далее если у Вас на сайте установлен скрипт всплывающий подсказок hint.js то в код данного скрипта перед добавить
Code
$('#jeuwu27').mouseover(function() {$('#hint').html($(this).attr('simv_left'));$('#hint').css('visibility','visible');});
$('#jeuwu27').mousemove(function(e){$('#hint').css('left',e.pageX+15).css('top',e.pageY+25)});
$('#jeuwu27').mouseout(function(){$('#hint').css('visibility','hidden');});
Сосбно всё, сохраняем и проверяем работу
-
FalleN -
736 -
1 -
0
Но только нужно ставить наверное на те модули которые обновляться должны не раньше через пару тройку минут
С Уважением, Андрей...