Улучшаем поля ввода пароля

Улучшаем поля ввода пароля

Всем привет!

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

Именно поэтому я решил сделать плагин для jQuery, который бы как-то показывал вводимые символы. В этой статье вас ждет мое решение с выводом вводимого символа справа от поля ввода пароля и решение от Криса Койера, автора сайта «Трюки CSS» в стиле айфоновского ввода паролей.

Ввод паролей как в iPhone

Это плагин к jQuery, как я уже говорил, сделал Крис Койер. Суть в том, что при ввода пароля вы видите последний введенный символ, а все предыдущие заменяются на звездочки (или любые другие спецсимволы).

Как это работает? Схема такая. Скрипт создает копию вашего парольного поля, но с типом «текст», исходное поле скрывается и ввод символов идет в клона. Теперь рассмотрим использование.

<form name="second-form" method="post">
<input type="password" id="password-input-2" name="p2" />
</form>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="iphone.style.pass.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#password-input-2').dPassword({
interval: 100,
duration: 1000
});
});
</script>

Демо Скачать

Как вы видите, я задал свои значения для времени показа последнего символа (duration) и интервала между показами символов (interval). Если вы печатаете быстро, то можете увидеть сразу несколько «открытых» символов.

Показ последнего введенного символа справа от поля

Надо заметить, что статью Криса я увидел уже после того, как написал свой плагин. Так что у нас с ним есть две реализации одной и той же идеи. Можете взять ту, которая удобнее вам, но я расскажу про свою ;-)

Итак, все просто. Вам нужно лишь указать, к какому инпуту применить плагин и задать в стилях настройки для спана, содержащего вводимый символ. Плагин сам создаст спан с указанным классом (по умолчанию — typed-char) и расположит его справа от инпута. В общем, рассмотрим использование.

<style>
.typed-char {
border: 1px solid #c9c041;
background: #eed200;
padding: .1em .5em;
font-weight: bold;
text-shadow: #FFF 0px 1px 1px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
font-size: 12px;
font-family: Verdana;
-moz-box-shadow: 0 1px 3px #999;
-webkit-box-shadow: 0 1px 3px #999;
}
</style>
<body>
<h1>Вывод последнего введенного символа в поле пароля</h1>
<form name="first-form" method="post">
<input type="password" id="password-input-1" name="p1" />
</form>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="fire.pass.chars.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#password-input-1').awesomePassword({
left: 13
});
});
</script>

Демо Скачать

Вот такие нехитрые скрипты на мой взгляд смогут чуть-чуть улучшить ввод пароля. Удачи!

Расскажите друзьям

Оцените статью:
  • 1
  • 2
  • 3
  • 4
  • 5

Комментарии — 27

remal
Слишком быстро мигает. Только раза с 10 понял что вообще справа отображается. Также надо убрать отображение неотображаемых символов, например backspace.

Вариант 2 у Криса на много лучше с точки зрения usability, имхо.
#
remal
Grin
Ну скорость показа ведь можно регулировать ;-)
#
Grin
Den Kulikoff
Лично мне больше по душе такая идея: поле ввода пароля обычное, со звездочками. Но рядом есть галочка "показывать пароль". Отмечаешь ее и поле ввода пароля становится просто текстовое. Так сделано в некоторых приложения и интерфейсах винды.

Т.е. если не уверен во вводимом пароле, то всегда можно подглядеть. А по умолчанию все как обычно. И из-за плеча пароль подглядеть сложнее :)
slasyz
Интересно, причём же тут айфон? этот способ не только в айфоне, а в большинстве мобильников/смартфонов/кпк.
Deadly
Мне вот интересно, почему метод айфоновским называют?? )) у меня ещё в Мотороле C650 так вводились пароли ))
#
Deadly
Steward
Вообще-то звёздочки при вводе пароля придуманы с одной единственной целью - чтобы никто из-за спины не подсмотрел пароль (при наборе на клавиатуре его довольно проблематично подсмотреть - ну не для всех набирающих этот пароль :) - но намного сложнее чем просто глядя на экран)
Поэтому вывод пароля даже пусть и такой кратковременный на экран - это дыра в безопасности... я лучше 10 раз ошибусь при вводе пароля, чем его кто-то один раз увидит.

Набор паролей на ИНДИВИДУАЛЬНЫХ мобильных устройствах, когда они закрываются звёздочками, считаю бредом .. причём полным... подсмотреть что набирается на мобиле в 100 раз сложнее чем на стационарном или портативном компьютере. Однако это вносит офигенный дискомфорт для пользователя - кто набирал хоть раз поймёт о чём я. Особенно если горе-разработчики не отключают на полях ввода паролей Т9 - это ваще жесть :) или не переключают раскладку языка сразу на английскую (хотя это конечно вопрос спорный.. но лично мне было бы так намного удобнее)

Фух.. извините за столь пространный комментарий :)))
Евгений
Весьма полезно. понравилось. Пока не придумал где применить :)
#
Евгений
Anonimous
Таки согласен со стюардом, и с деном кулоковым, звёздочки созданы для одной цели, гораздо проще и юзабильнее добавить галочку "показать пароль"
#
Anonimous
Леха
Как же вы за**али своим айфоном !
Методу ввода сто лет...
#
Леха
Аноним
Причём тут iPhone? :)
#
Аноним
Критик
Тупорылые быдлофонщики
#
Критик
Глянька
НУ ПАВЕЛ, А ДЕЙСТВИТЕЛЬНО, ПРИЧЕМ ЗДЕСЬ КАКОЙ-ТО АЙФОН? ПОЛЯ ВВОДА ЭТО ПОЛЯ ВВОДА, ТЕЛЕФОНЫ ЭТО ТЕЛЕФОНЫ. НЕ НАДО МЕШАТЬ РЕДИСКУ И ПИЛОЧКИ ДЛЯ НОГТЕЙ, В КОНЦЕ-ТО КОНЦОВ.

ЭХ, КОГДА ЖЕ ЗАКОНЧИТСЯ В РОССИИ ЭРА УМНИЧАНЬЯ?
#
Глянька
Глянька
ВООБЩЕ, ЛЕХА ПРАВ. ВЫ, ПАВЕЛ, ЗАЕБАЛИ СВОИМ АЙФОНОМ
#
Глянька
Larance
Да какая разница какой телефон, давайте назовем методом как в Nokia или Motorola. Лучше пишите коменты в тему, а обсуждением телефонов займитесь на форумах.
#
Larance
Лена
Как в айфоне - потому что оригинальная статья так называется. Мне кажется, это очевидно, и в принципе к теме не относится. Скрипт интересный.
#
Лена
Левап
Видно, Павел, Лена ваша знакомая или подруга.
Странновато, что она вот так за вас заступается.
#
Левап
nskarl
в архиве ошибка
vremenno-net/examples/impoved-pass-input/iphone.style.pass.zip
saintist
Да а при чем тут iPhone
tatkhagata
Спасибо, Павел! От всей души, спасибо! Вы необычайно расширили горизонты моего сознания. Я в совершенно новом свете увидел удобство. Сегодня я переставил свою кровать на балкон. Вернее будет сказать, закрепил ее в вертикальном положении на южной стене здания. Пробую устроиться на ней. Подо мной 32 метра. Полагаю, что мне удастся увидеть что-то очень важное перед тем как я.... ААААААААААААА!!!!!!!!!!!!!!!!!
#
tatkhagata
Aleksey Karpenko
Спасибо за статью! Метод интересный, но не всегда применимый. Яркий тому пример - удаленная техническая поддержка. Когда специалист сидит через удаленный рабочий стол и просит ввести пользователя пароль к чему-либо, то он его не видит, и кроме как грубым перехватом контроля над компьютером - никак не может им завладеть.. А в вашем же случае.. сами понимаете :)
sup
Чего Вы здесь достали со своим При чем тут айфон, да Причем тут айфон!!! Дело же не в нем! Применять этот метод не обязательно к паролю, может у кого идея интересная появится!
#
sup
Саня
Введите кавычку и фсе.... пипец, нашли что обсуждать, лучше бы потестили.
#
Саня
Кирилл
привет всем ... мне нужна помощь я просто не знаток в js, и не оч знаю css ,а где изменять пароль или делать или вообще как мне надо зделать так чтоб, при правельном вводе пароля открывалась ссылка если можете чем помочь прошу...пожалуйста
#
Кирилл
Кирилл
+ нет поддержки php ), это бесплатный хостинг на wen.ru если есть чтото похожее или лучше пожалуйста скиньте ... только желательно бесплатный ... просто я еще учусь знаю ток html и то не весь и css начал только хотел бы php учить паралельно
#
Кирилл
Кирилл
а и да скрипт классный админу пасиб...!
#
Кирилл
Aiya
вот у меня iphone 4s но я случайно включила Input Password! но и пароль я не знаю! что делать? как можно разблокировать iphone 4s? заранее благодарю)

Новый комментарий

как выглядит какой тег
жирный текст <b>жирный текст</b>
курсивный тект <i>курсивный тект</i>
зачеркнутый текст <s>зачеркнутый текст</s>
подчеркнутый текст <u>подчеркнутый текст</u>
ссылка <a href="адрес">ссылка</a>
function foo() { ... }
<pre><code>function foo() { ... } </code></pre>
разрешенные теги или посмотреть как будет выглядеть
как выглядит какой тег
жирный текст <b>жирный текст</b>
курсивный тект <i>курсивный тект</i>
зачеркнутый текст <s>зачеркнутый текст</s>
подчеркнутый текст <u>подчеркнутый текст</u>
ссылка <a href="адрес">ссылка</a>
function foo() { ... }
<pre><code>function foo() { ... } </code></pre>
разрешенные теги или посмотреть как будет выглядеть

metin2 pvp metin2 pvp serverler pvp serverler