JS скрипт на JQuery для работы со списками

Евгений15 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
03.10.2010

Скрипт представляет из себя отдельную HTML страничку.

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

Работа скрипта разделяется на 3 шага.

1 шаг:

Пользователь видит форму ввода (textarea) и кнопку "Поехали!". В форму ввода он вводит список строк (строки разделяются переводом строки).

2 шаг:

При нажатии на "Поехали!" из первого шага textarea превращается в нумерованный список.

Список обладает следующими свойствами:

По клику на любое слово в этом списке происходит изменение первой буквы этого слова на заглавную и наоборот.

При этом в зависимости от того, заглавная буква в начале слова или нет - меняется css класс, которому это слово принадлежит. (смена back-ground'а у слова)

Если при клике нажата клавиша Shift на клавиатуре, то если есть большие буквы в слове - оно переходит в нижний регистр целиком, а если нет, то в верхний.

Если при mouseover над словом нажата кнопка Alt на клавиатуре - слово превращается в input для редактирования. Редактирование завершается по Enter'у.

3 шаг:

По клику на кнопке "Готово" преобразованный список превращается в textarea для копирования.

Конкурентным преимуществом для Вас будет возможность реализовать Автозамену c возможностью одной отмены (Ctrl+Z) сразу после замены.

Автозамена должна активироваться по сочетанию Ctrl+H с подстановкой выделенной части слова из input'а при Alt+Mouseover (см. конец 2 шага) либо без подстановки чего-либо, если выделения нет, просто по Ctrl+H.

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

Лучше, если все эти махинации будут происходить внутри одного div'а, чтобы я мог самостоятельно сделать какую-нибудь шапку, подвал и т. п.

Заявки фрилансеров