Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Ярлыки как в Gmail


Автор: alergi 5.1.2007, 15:43
В Gmail есть такая функция как ярлыки. Т.е. к любому письму из списка можно добавить один или несколько ярлыков.

Вот не встречел ли кто готовое подобное решение, интересует именно клиентская сторона — javascript, т.е. чтобы ярлыками можно было управлять без перезагрузки страницы со списком.

Просто с моими знаниями js мне понадобится дня два минимум, а проект как всешда надо было "сдать еще вчера" smile

Автор: Sardar 5.1.2007, 17:58
Ты хоть понял что спросил? На клиенте это просто пробежаться по всем письмам (табличной строчке), отмеченным чекбоксом, поставить в уже существующий контейнер имя ярлыка. Что есть циклы, getElementsByTagName, innerHTML и DOM тебе уже должно быть известно.

Далее собрали ID всех отмеченных писем, его лучше в каком аттрибуте хранить или в "class" аттрибуте если не XHTML используем и валидность нужна. с XML лучше не заморачиваться, просто одной строкой все ид через запятую отослать через XMLHttpRequest. Можно и по старинному, поставить скрытый ифрейм, при отправке собрать форму и отправить в ифрейм, тогда даже самому строку с инфой собирать не нужно.

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

Автор: alergi 5.1.2007, 19:45
Цитата(Sardar @  5.1.2007,  17:58 Найти цитируемый пост)
 На клиенте это просто пробежаться по всем письмам

я тоже думал, что это просто пока не начал делать...
очень много заморочек там: мало того, что надо пробежаться по всем строкам, так надо еще проверить имеют ли письма уже какие-то ярлыки, составить список ярылков + заморочки если пользователь будет то снимать, то удалять ярлыки
и у одного письма может быть несколько ярлыков

это конечно все сделать не сложно, просто нудно, много кода писать
вот хотелось бы какое-нить готовое решение, которое можно просто прикрутить к вёрстке

Автор: 12345c 5.1.2007, 22:10
Это, видимо, теги, как их называют на сайтах типа flickr. Что ж, у Вас очень хорошие знания, если сделаете их за 2 дня на клиенте в столь общей постановке. Пусть даже за 4. Их ещё на сервере надо поддерживать.

Так как это встроенный механизм (в почту, в заметки), то примеров отдельного использования его нет, и даже примеров совместного использования в свободных скриптах вряд ли найдёте - функция, недавно появившаяся в современных проектах. Для связи с сервером должна использовать Аякс - подгружать имена тегов, отправлять результаты пометок, догружать список выборки по тегам. Очевидно, Вам понадобятся клиентские функции:

*) выборка по тегу (ярлыку) или по группе; возможно, поиск по подстроке тега;
*) показ подсписка (весь список может быть очень большим);
*) подгрузка страницы подсписка;
*) сортировка по последовательности тегов, по дополнительным признакам списка.

(дополнительные признаки - это, например, дата создания записи, имя записи и прочее, что может отличать запись от других.)

Так что задача, если смотреть вообще - не очень ограниченная, сильно связана с рядом других задач Аякса, сортировки, ведения списков, представления их на сервере в БД и клиенте.

Реализовать теги удобнее. как говорил Sardar, через составные имена классов. Альтернатива - вести массив строк или массивов имён тегов. Может быстрее работать, так как с DOM будет связана только через id-ы. Да и описания (текстовые) тегов надо держать, и индексы для БД где-то в аналогичных массивах.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)