Xpoint
   [напомнить пароль]

Поле для ввода внешнего URL

Метки: [без меток]
2003-08-27 19:13:17 [обр] Марьяна(5/305)[досье]

Есть большая форма (редактирование страницы в CMS), где присутствует поле для ввода внешнего адреса. Предлагаются два варианта, изображенных на рисунке.

При варианте 1 нужно потратить больше времени на ввод. Кроме того, если полный адрес вместе с httр:// был скопирован, то протокол нужно из поля ввода удалять.

При варианте 2 пользователь может забыть ввести протокол, поэтому напрашивается решение вводить по дефолту value="httр://", но это хоть и самый популярный, но не единственный, протокол, соответственно подсказка может сбить с толку.

Предполагается, что пользователи CMS - относительно продвинутые пользователи Интернет (но не больше).

Какой вариант предочтительней, почему?
Спасибо.

спустя 5 минут [обр] Андрей Новиков(8/1242)[досье]
Первый вариант сбивает с толку и неудобен. Если планируется хоть какое-нибудь обучение или наличие Руководства, то нужно второй и вообще без http://, а серверно, если его забыли вписать, его добавлять. Или, если больше нравится, при сабмите выдавать confirm: "Вы имели в виду http://entered.url/?"
спустя 29 минут [обр] Дмитрий Горяинов aka "три галки"(1/542)[досье]

согласен с Андреем. В первом варианте - попросту лишний элемент управления.

Выбираю второй. Из формы префикс убрать. Проверка на клиенте + сервере допустимых префиксов протокола. По умолчанию (если пользователь ничего не ввел) - добавлять "http://"

Тут к месту придеться подсказка (tips) с пояснением о допустимых и умолчательном префиксе / протоколе. Помощь или Руководство - хорошо, но обычно не читается. Снабжать формы подсказками о смысле и допустимом синтаксисе это хорошо и правильно!

спустя 15 минут [обр] Сергей Чернышев(1/589)[досье]
Дмитрий Горяинов aka "три галки":
согласен - второй вариант лучше, но я бы http:// оставил.
Только нужно не забыть проверять на сервере не на кол-во слэшей, а то юзера часто ошибаются и может получиться http://http:/xpoint.ru
спустя 59 секунд [обр] Сергей Золотухин(0/126)[досье]

Марьяна:
Мне интуитивно нравится первый вариант, но, конечно, со всеми твоими оговорками. Если учесть все проблемы, о которых ты сказала, можно добиться неплохого контрола. Например:

- по умолчанию в select ничего не выбрано
- при paste делаем так: ищем во "вклеиваемом тексте" протокол (regexp) и устанавливаем соотв. пункт в селект (если протокол не найден, устанавливаем по умолчанию http)

примерно вот так: http://serge.design.ru/t.html <- это супер-альфа версия :-), события не настроены нормально, но для демонстрации идеи пойдет.

Согласен, что это не очень прозрачно, но после пары раз пользователь привыкнет и будет радоваться :)

спустя 13 часов [обр] Андрей Новиков(8/1242)[досье]
Сергей Золотухин[досье], а в чем смысл префикса? Что делать, если префикс и URL не совпадают?
Дмитрий Горяинов aka "три галки"[досье], да, обычные пользователи не читают. Но такими интерфейсами пользуются специально подготовленные пользователям, которым предоставлены определенные полномочия. Если они держатся за свое рабочее место, то они прочитают руководство, чтобы не завалить весть сайт. В нашей компании, например, вообще не даются административные права в таких системах, пока ты не пройдешь специальный тренинг. И в общем случае это проавильно.
спустя 2 часа 11 минут [обр] Константин Кузнецов aka WebRacer(0/15)[досье]

ИМХО, второй вариант, префикс оставить...

если в скопированном в клипборд урле есть префикс - тыц хвостатой в поле ввода, Ctrl-A, Ctrl-V;
если префикса нет - тыц хвостатой в поле ввода, End, Ctrl-V....

Ну и проверка на присутствие префикса на сервере или на клиенте необходима. Как уже и говорилось.

спустя 25 минут [обр] Sergei Erjemin (webdragon)(3/182)[досье]

А мне нравится первый вариант. Для "не профи" он более понятен. Многим ведь вообще неясно что такое http:// ftp:// и темболее shttp:// и являются они частью URL или просто типа подписи... На визитках сплошь и рядом пишут:

тел.: (123)123-4567
факс: (123)123-4567
http: www.mysite.ru

Только нужно предусмотеть разбор строки во втором поле на предмет наличия там указания протокола. Приоритет приоритет отдавать указанному во втором поле.

спустя 25 минут [обр] Сергей Золотухин(0/126)[досье]

Андрей Новиков:
"Что делать, если префикс и URL не совпадают?" Насколько я знаю, кол-во протоколов в интернет счетное :). И предлагаю немного расширить круг пользователей до обычных людей за компом (это допускается? :)

Смысл префикса в том, чтобы показать пользователю, что вводимые данные должны иметь определенный формат.

спустя 4 часа 4 минуты [обр] Александр Лукьянов(0/781)[досье]
Я тоже реализовывал первый вариант (с подсказкой рядом, меняющейся в зависимости от протокола) с синхронизацией по протоколу.
Для пользователя, пусть даже и "продвинутого", но все-таки не особо понимающего, что такое все эти "http://", "ftp://", "mailto:" - дополнительное напоминание о том что адреса должны соответствовать некоему стандарту - тут я с Сергеем согласен полностью.
А во втором варианте и без префикса - "И чего я должен сюда писать? - пишу www.domain.com - Бамс! ругается... Какой-то http:// надо... что это за нафиг?"
И кстати, а что относительные ссылки (или ссылки на свой же сайт - /news/sport/soccer/eurocup.html) изживаются как класс? Что это вы сразу кинулись http:// по умолчанию вставлять?
спустя 17 минут [обр] Марьяна(5/305)[досье]
Александр Лукьянов:
Для внутренних ссылок есть отдельное поле.
спустя 7 минут [обр] Александр Лукьянов(0/781)[досье]
Марьяна:
Да, извините, невнимательно прочел начало :) Но зачем???
спустя 3 минуты [обр] Марьяна(5/305)[досье]
Александр Лукьянов:
Потому что для данного случая так удобнее (это выходит за рамки вопроса и объяснять подробно мне не хочется).
спустя 2 часа 25 минут [обр] Александр Сытник(0/54)[досье]

ИМХО, вариант 2, но "http://" стирать во время фокуса. А дальше уж по потере фокуса можно и RegEx'ом пройтись и дописать протокол в случае чего...

P.S. Стирать "http://" нужно потому, что большинство адресов обычно копируют из адресной строки бразера, а там "http://" обычно уже присутвует.

спустя 16 часов [обр] Марьяна(5/305)[досье]

Александр Сытник:
Нет, такой вариант не подходит. Убирать можно значения типа "Your text goes here", когда очевидно, что данная фраза является заглушкой-подсказкой. В случае с http:// это не очевидно, и его исчезновение имеет все шансы вызывать раздражение (посмотрел, что в поле http:// уже есть, скопировал адрес без него, пытаешься ввести - а вот тебе и сюрприз...)

Дмитрий Горяинов aka "три галки":
Касательно tips - на первый взгляд мне идея очень понравилась, и мне даже показалось, что это одна из тех простых (даже надо сказать элементарных!) вещей, о которых большинство забывает for no reason. И всё же в случае с моей страницей, много подсказок позволить себе нельзя - страница относительно тяжелая и должна легко пробегаться как табами/мышой, так и глазами. Много текста возле каждого поля, увы, будет отпугивать и создавать впечатление излишней сложности.

спустя 2 минуты [обр] Сергей Золотухин(0/126)[досье]

Марьяна:
"много подсказок позволить себе нельзя" — в этом все дело :)

Могу я узнать чем конкретно не нравится мой вариант? Может быть придем к хорошему решению — мне проблема тоже интересна.

спустя 16 минут [обр] Евгений Бондарев aka Eugene Bond(3/1600)[досье]

Марьяна:

В случае с http:// это не очевидно, и его исчезновение имеет все шансы вызывать раздражение (посмотрел, что в поле http:// уже есть, скопировал адрес без него, пытаешься ввести - а вот тебе и сюрприз...)

Может наоборот? При получении фокуса полум ввода, туда вставлять префикс http:// (если поле пустое) и делать этот текст выделенным?

спустя 7 минут [обр] Давид Мзареулян(1/1003)[досье]
Всё-таки я не понимаю, в чём проблема. Андрей совершенно прав: если в это поле могут заноситься только внешние ссылки, то надо просто на сервере проверить, начинается ли введённое значение с ^[a-z]+://, и если нет, то дорисовывать http://. Можно выпендриться, и для ссылок, начинающихся на ftp. пририсовывать ftp://, но не думаю, что это нужно. И всё. А поле - простое текстовое поле с заранее введённым "http://". Безо всякого ява-скрипта, потому что юзер уже привык к определённому поведению поля ввода с заранее введённым значением, и не ждёт от него интеллекта.
спустя 50 секунд [обр] Дмитрий Юров(1/411)[досье]
Чего вы мучаетесь? Сделать как в браузере, и всё. Самый безошибочный вариант.
спустя 11 минут [обр] Сергей Золотухин(0/126)[досье]
Дмитрий Юров:
хороший вариант :-)
спустя 11 дней [обр] Марьяна(5/305)[досье]

Выбран второй вариант при следующих аргументах:

Two fields for external image link should be substituted with one text input. One field instead of the two will make the process of entering data faster, as well as it will give the possibility to paste the full address (which may usually be copied easier and quicker than the one without protocol in it).

Default value of this field is [type external link] which dissapears once user attempts to enter the URL. When the page is saved, entered URL is being analyzed on the server and if protocol is missing, http:// is added, and a warning note says:

The external link below doesn’t seem to contain any of the recognized protocols (http://, https://, ftp://, mailto:, news:). The most popular http:// protocol was therefore added to this address.

So in the worst case user gets a warning message that enables him to recover quickly. It is unlikely that users will repeat the same mistake many times, so dissapointment (if any) is an occasional matter. On the other hand, a single field will improve efficiency, which is the primary usability attribute for tasks that are being done frequently (with ease-of-learning a secondary attribute).

спустя 11 минут [обр] Марьяна(5/305)[досье]

Сергей Золотухин:

Могу я узнать чем конкретно не нравится мой вариант?

Да я просто не поняла сначала, что это вообще что-то еще кроме самих полей, теперь дошло, что ваш яваскрипт ИЕ-онли. Посмотрела - для обсуждения идеи мне такой альфа-версии мало, т.к. скажем при наборе любого адреса мне все время хотят навязать http:// , что раздражает (ведь адрес не только копируют, но и набирают). Если вы можете описать некую целостную идею, думаю, всем будет интересно, но по данной супер-альфа версии трудно восстановить ход ваших мыслей.

спустя 11 часов [обр] Сергей Золотухин(0/126)[досье]

Марьяна:
"при наборе любого адреса мне все время хотят навязать http://" — теоретически, если вы начнете писать ftp://lalala, select должен автоматом переключиться на проктокол ftp

А нормальная версия появится только после того, как я все обдумаю и решу, что стОит вообще писать код. А до этого всетаки хотелось бы обсудить. Но если вы не могете, не смею настаивать :)

спустя 3 часа 3 минуты [обр] Андрей Новиков(8/1242)[досье]
Марьяна, ты текст писала? Шикарно!
спустя 56 минут [обр] Марьяна(5/305)[досье]
Андрей Новиков:
...засмущалась :)
спустя 3 часа 3 минуты [обр] Сергей Чернышев(1/589)[досье]

Марьяна:
Действительно хорошо. Я бы пока так не смог, хотя стараюсь продвигаться в этом направлении. ;)
Часта подобные описания приходится писать?

Андрей Новиков:
Она же в Англии живет уже давно, а в Европе еще давнее - ты бы уже на японском заговорил если бы в Японии жил ;)

спустя 3 часа 1 минуту [обр] Андрей Новиков(8/1242)[досье]
Мне не английский как таковой понравился, а именно стиль и качество изложения.
спустя 7 часов [обр] AB...(0/233)[досье]
Марьяна[досье], я голосую за первый вариант, он для меня понтней. А для некоторых других наверное стоит дать объяснение коротенькое на самой странички. Да и для реализации несколько проще.
Powered by POEM™ Engine Copyright © 2002-2005