Сейчас: 16:27:19   20-го апреля 2024 г.
UsefulScript.ruСкриптыТекстовые эффектыINPUT с изменяющимся текстом
6
20

Бегущая строка в текстовом поле INPUT
с изменяющимся текстом

Недавно мы рассмотрели простой пример бегущей строки в текстовом поле INPUT. Теперь давайте рассмотрим чуть более сложную версию скрипта подобной бегущей строки. Усложнение заключается в том, что бегущая строка будет изменять свой текст.


Пример подобной бегущей строки в текстовом поле с изменяющимся текстом расположен ниже:



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


Чтобы получить подобную бегущую строку в текстовом поле INPUT с изменяющимся текстом, вставьте JavaScript код, приведенный ниже, в начало Вашей странички:

JavaScript код:
<script type="text/javascript">
var 
speed 100;
var 
delay 1000;
var 
timerID null;
var 
Running false;
var 
mess = new Array()
 
mess[0] = "Введите свой номер телефона";
 
mess[1] = "Пример: 8(999)999-99-99";
 
mess[2] = "Либо оставьте поле пустым";
var 
currentMessage 0;
var 
offset 0;

function 
stop() {
 if (
RunningclearTimeout(timerID);
 
Running false;
}

function 
start() {
 
stop();
 
show();
}

function 
show() {
 var 
text mess[currentMessage];
 if (
offset text.length) {
    if (
text.charAt(offset) == " "offset++;
    var 
partialMessage text.substring(0offset 1);
    
document.example.mobile.value partialMessage;
    
offset++;
    
timerID setTimeout("show()"speed);
    
Running true;
 }
 else {
    
offset 0;
    
currentMessage++;
    if (
currentMessage == mess.lengthcurrentMessage 0;
    
timerID setTimeout("show()"delay);
    
Running true;
 }
}
</script>

В том месте Вашей странички, где Вы хотите выводить на экран текстовое поле INPUT, в котором будет присутствовать бегущая строка, вставьте следующий код:

HTML код:
<div align="center">
 <
form name="example">
  <
input type="text" size="25" name="mobile">
 </
form>
</
div>

Ну и в конце странички, для того чтобы запустить скрипт бегущей строки, необходимо вызвать прописанную ранее функцию start():

JavaScript код:
<script type="text/javascript">
 
start();
</script>

Как видите, ничего сложного здесь нет, но при использовании описанного скрипта, текстовые поля становятся намного информативнее.


Если первоначально данное текстовое поле создавалось не только для вывода какой-либо информации посетителям, а должно еще использоваться и для ввода какой-либо информации, для последующей отправки, то вставьте внутрь тега <input type="text" size="25" name="mobile"> событие для остановки вывода бегущей строки onclick="document.example.mobile.value = ''; stop();"

Дата создания: 14:30:00 03.07.2011 г.
Дата обновления: 22:36:47 08.03.2012 г.
Посещений: 5965 раз(а).

Комментарии посетителей (4 шт.):
Вадимка
0
# 275
(17:56:20  27.08.2012 г.)

Проблема заключается в том, что когда хочешь ввести что-то в поле, то не получается!
Ответить

Administrator
0
# 276
(19:39:15  27.08.2012 г.)

Вадимка, для того, чтобы можно было вводить в строку текст, замените строчку:
<input type="text" size="25" name="mobile">
на такую:
<input type="text" size="25" name="mobile" onclick="document.example.mobile.value = ''; stop();">
Ответить

Раиль
0
# 615
(21:27:43  14.02.2013 г.)

Как сделать так, чтобы при переходе на другую вкладку сайта текст вводился с того же места где и стал? А не всё заново?
Ответить

Грабик
0
# 4320
(15:06:49  09.07.2018 г.)

Можно ведь что бы в placeholder писало а не в сам input :\
Ответить

Закрыть
Ваше имя:
421 + 4 =
Добавить комментарий:
Ваше имя:
421 + 4 =

Перед публикацией все комментарии проходят обязательную модерацию!

Если Вы хотите задать какой-либо вопрос, то сделайте это на нашем форуме.
Таким образом, Вы сможете быстрее получить ответ на интересующий Вас вопрос.
Посетителей онлайн: 4

Мешает ли Вам реклама?