Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Список выбора, как в google labs, перемещение между эл-тами с пом. стрелок 
:(
    Опции темы
Bog d`An
Дата 9.5.2008, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.3.2005
Где: Украина:Днепропет ровск

Репутация: нет
Всего: 3



Здравствуйте! 

http://www.google.com/webhp?complete=1&hl=ru
вот тут организован предикатный ввод по словарю с помощью аякса... модно сейчас, ага)

вот та часть которая отсылает-проверяет-отдает данные скрипту 
js -> ajax -> php -> бд -> ajax

сделана smile

надо 

создание самой формы(дива или что там) списка и перемещения по нему с помощью клавиш вверх-вниз, выбор по энтеру или расширение по стрелке вправо

Как это сделать, не подскажите? Собственно будет много полей ввода, ай-ди, нэйм известен (передается по onkeyup), 
при наборе текста на событии onkeyup - отображаются предположения для допустимых вариантов, которые отбираются из бд.

собственно вопрос - как его отрисовать и поместить под (над - если внизу страницы) поле ввода, в котором осуществляется набор.

Это сообщение отредактировал(а) Bog d`An - 9.5.2008, 16:50
--------------------
Удача откроет двери даже там, где их нет.Генри Морган--------------------[Furry team][Agent`s team][СРУКер]   
PM MAIL WWW   Вверх
Fortop
Дата 9.5.2008, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



http://plugins.jquery.com/project/YA_AutoComplete
http://plugins.jquery.com/project/autocompletex
http://plugins.jquery.com/project/ac

Добавлено через 12 секунд
Может лучше готовым воспользоваться?


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Bog d`An
Дата 9.5.2008, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.3.2005
Где: Украина:Днепропет ровск

Репутация: нет
Всего: 3



Спасибо, посмотрю.

Хочется разобраться)

Это сообщение отредактировал(а) Bog d`An - 9.5.2008, 18:55
--------------------
Удача откроет двери даже там, где их нет.Генри Морган--------------------[Furry team][Agent`s team][СРУКер]   
PM MAIL WWW   Вверх
Fortop
Дата 9.5.2008, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Bog d`An, smile возможно разобрав чужой код, будет проще smile

А создать div - не сложно smile даже со скроллингом smile

Перемещение, я думаю тоже будет не сложнее. Можно, для начала, просто реализовать перемещение стрелками между 
элементами на готовой странице.
Когда получится, то решение можно будет легко перенести и на любой созданный элемент smile


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Bog d`An
Дата 9.5.2008, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.3.2005
Где: Украина:Днепропет ровск

Репутация: нет
Всего: 3



Fortop, хих, подскажи, как smile 

мя в js небольшой спец... но смущает что в нем, похоже ф-я $ определена, а я использую prototype.js 
--------------------
Удача откроет двери даже там, где их нет.Генри Морган--------------------[Furry team][Agent`s team][СРУКер]   
PM MAIL WWW   Вверх
Fortop
Дата 9.5.2008, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Bog d`An, 
1. если используешь prototype.js, то и ищи аналоги для него smile я тебе дал образцы для jQuery.

2. Что тебе не понятно? как создать div? Как минимум 3мя способами smile
Но я предложил бы тебе использовать следующий вариант:
 - заранее в разметке сделать div для автокомплита. (но скрытым display:none);
 - затем при необходимости показать его, ты задаешь из скрипта его top, left, 
 - наполняешь содержимым innerHTML 
 - и делаешь его видимым display:block




--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Bog d`An
Дата 9.5.2008, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 217
Регистрация: 26.3.2005
Где: Украина:Днепропет ровск

Репутация: нет
Всего: 3



Похоже, в том примере используется иной способ, создают из js, да?..

Как внутри перемещаться с выделением - вот это смущает... Неужели просто ловить нажатие и с помощью стилей перекрашивать внутренний див в синюю полоску?




И еще - может примерчик маленький с комментариями?)



Это сообщение отредактировал(а) Bog d`An - 9.5.2008, 21:29
--------------------
Удача откроет двери даже там, где их нет.Генри Морган--------------------[Furry team][Agent`s team][СРУКер]   
PM MAIL WWW   Вверх
Fortop
Дата 9.5.2008, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 1
Всего: 42



Цитата(Bog d`An @  9.5.2008,  21:19 Найти цитируемый пост)
Как внутри перемещаться с выделением - вот это смущает... Неужели просто ловить нажатие и с помощью стилей перекрашивать внутренний див в синюю полоску?

А как иначе? smile

Цитата(Bog d`An @  9.5.2008,  21:19 Найти цитируемый пост)
И еще - может примерчик маленький с комментариями?)

Я не писал таких вещей smile пользовался готовыми - они меня во многом удовлетворяют smile

Добавлено через 4 минуты
Цитата(Bog d`An @  9.5.2008,  21:19 Найти цитируемый пост)
Похоже, в том примере используется иной способ, создают из js, да?..

Создавать из js - лишь немногим сложнее smile

вместо getElementById()
используется createElement()
Вот кусочек кода. Первые две и последнюю строчки не смотри - это использование jQuery. 
Код

                    var tableBody = $(table.tBodies[0]);
                    $.tablesorter.clearTableBody(table);
                    for (row in json) {
                        var tr = document.createElement('tr');
                        for (col in json[row]) {
                            var td = document.createElement('td');
                            var text = document.createTextNode(json[row][col]);
                            td.appendChild(text);
                            tr.appendChild(td);
                        }
                        tableBody[0].appendChild(tr);
                    }
                    $(table).trigger("update");



--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0643 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.