Делаем подсказки в поле input

955
5.6 из 10
Проголосовало: 10






Одним очень удобным свойством HTML форм, а именно текстовых полей является поддержка атрибута Placeholder. Этот атрибут позволяет задать произвольный текст, который будет отображаться в поле и исчезать про фокусе на нем. Таким образом получается нечто своеобразной подсказки для пользователя о назначении данного поля. Но увы, не все браузеры поддерживают данный атрибут для полей, тегов INPUT и TEXTAREA, а лишь Chrome, Opera 11.5>, Safari 5>, FireFox 4>, IE всех версий вообще его не поддерживает(как всегда).

Пример HTML кода:

Код
<textarea placeholder="Ваше сообщение"></textarea>


Ввиду чего приходится реализовывать данное свойство своими силами, с помощью jQuery. Для этого написан специальный скрипт на JS, принцип работы которого весьма прост, он обходит все элементы с указанным классом и подставляет значение указанное в атрибуте rel, словно это атрибут placeholder.

Пример JS (с использованием библиотеки jQuery):

Код
$(document).bind('ready', function(event) {
  $('.placeholder').each(function(i) {
   
  var item = jQuery(this);
  var text = item.attr('rel');
  var form = item.parents('form:first');
   
  if (item.val() === '')
  {
  item.val(text);
  item.css('color', '#888');
  }
   
  item.bind('focus.placeholder', function(event) {
  if (item.val() === text)
  item.val('');
  item.css('color', '');
  });
   
  item.bind('blur.placeholder', function(event) {
  if (item.val() === '')
  {
  item.val(text);
  item.css('color', '#888');
  }
  });
   
  form.bind("submit.placeholder", function(event) {
  if (item.val() === text)
  item.val("");
  });
  });
  });


При этом HTML будет выглядеть след. образом:

Код
<input type="text" name="email" class="placeholder" rel="Ваше сообщение"/>


Надеюсь данная заметка с примером вам пригодиться, благодарю за внимание.
Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
Источник: http://jquery.com/
  • Всего комментариев: 2

Nexus
0
Nexus написал: Написано 02 Июня 2013 в 18:16
Комментарий №2
А так нельзя сделать:
? smile

Goodmind
+2
Goodmind написал: Написано 25 мая 2013 в 17:00
Комментарий №1
Злостные ненавистники IE, в IE10 атрибут placeholder между прочим работает! dry

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 25
Скрипты и модификации для Ucoz 2118
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 431
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
  • Acht написал:
  • Тест
    Мда, у меня тоже не работает. Или нужно ждать обновление?
    Добрый вечер.Подскажите,пожалуйста: как сделать, чтобы второй или третий набор смайлов заменить своими.
    Вы сами себе пишите?
  • CbIPoK2513 написал:
  • Скрипт хорош, уже подстроил свой сайт под него :3
    Последние темы
    Опрос
    249
    А
    Р
    Что произойдёт: $("#...
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 2
    Гостей: 1
    Пользователей: 1
    0
    Сегодня были
    Топ пользователей: