Полезная информация

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№108-08-2007 09:23:37

XuTMAH
Участник
 
Группа: Members
Зарегистрирован: 23-05-2007
Сообщений: 32
UA: Firefox 2.0

[?] autocomplete textbox

Пишу расширение для Firefox, в нём есть окошко с двумя textbox'ами login и password, для быстрой авторизации на сайте...
На сайте тоже есть эти самые поля для ввода (<input> тэг) login и password...
Когда на сайт входишь несколько раз под разными логинами, то по дабл клику или если ввести начало уже вводимого логина, появляется всплывающее меню с доступными вариантами и при выборе одного из них заполняются оба поля...
А теперь вопрос...
Как сделать так чтобы мой textbox выдавал мне для выбора те же самые значения введённые в форме на сайте?
Хотелось бы услышать решение без ручного заполнения поля login с помощью nsIPasswordManager...
Заранее спасибо!

Отсутствует

 

№208-08-2007 14:25:29

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 2.0
Веб-сайт

Re: [?] autocomplete textbox


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№310-08-2007 23:42:37

XuTMAH
Участник
 
Группа: Members
Зарегистрирован: 23-05-2007
Сообщений: 32
UA: Firefox 2.0

Re: [?] autocomplete textbox

Спасибо!
Сделал по аналогии... но осталась небольшая проблемка...
Когда отобразился выпадающий список с доступными вариантами и пользователь остановился на каком-то элементе, а затем нажал delete, то из доступных вариантов он удалится и больше появляться не будет, т.е. из истории форм этот элемент удалён, но запись в хранилище паролей остаётся... отсюда и вопрос - как узнать какой элемент был удалён, чтобы удалить и соответствующую запись в хранилище паролей?

Отсутствует

 

№411-08-2007 12:00:46

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 2.0
Веб-сайт

Re: [?] autocomplete textbox

как узнать какой элемент был удалён

http://pastebin.mozilla-russia.org/90008


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№511-08-2007 21:17:28

XuTMAH
Участник
 
Группа: Members
Зарегистрирован: 23-05-2007
Сообщений: 32
UA: Firefox 2.0

Re: [?] autocomplete textbox

Ещё раз спасибо!
Моя ошибка была в том что я пытался ловить не onkeydown, а onkeypress... и DELETE ко мне не приходил...

Возникла ещё одна проблемка...
Когда нажимаешь на кнопку submit на сайте, то вылазит диалог с тремя вариантами "Запомнить", "Никогда для этого сайта" и "Не сейчас"...
Уверен что есть какая-нибудь уже написанная функция в браузере которая вызывает этот диалог, но вот только я никак не могу его найти...
Может кто уже нашёл?

Отсутствует

 

№612-08-2007 18:14:35

XuTMAH
Участник
 
Группа: Members
Зарегистрирован: 23-05-2007
Сообщений: 32
UA: Firefox 2.0

Re: [?] autocomplete textbox

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

Выделить код

Код:

function DblClick( event )
{
	var email = document.getElementById( "login_email" );

	var new_event = document.createEvent( "KeyboardEvent" );
	new_event.initKeyEvent( "keydown", true, true, event.view, false, false, false, false, new_event.DOM_VK_DOWN, 0 );
	email.dispatchEvent( new_event ); // Первый вариант
	//email.inputField.dispatchEvent( new_event ); // Второй вариант

	var new_event = document.createEvent( "KeyboardEvent" );
	new_event.initKeyEvent( "keyup", true, true, event.view, false, false, false, false, new_event.DOM_VK_DOWN, 0 );
	email.dispatchEvent( new_event ); // Первый вариант
	//email.inputField.dispatchEvent( new_event ); // Второй вариант
}

Отсутствует

 

№712-08-2007 20:56:31

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 2.0

Re: [?] autocomplete textbox

Также хотелось бы чтобы по двойному клику появлялся этот выпадающий список...

Если известен id этого списка, то, полагаю, можно так:

Выделить код

Код:

<чтото-там ondblclick="addPopup(this)" />
function addPopup(it) {
    it.setAttribute("popup", "elementId");
}

Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№812-08-2007 21:36:34

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 2.0
Веб-сайт

Re: [?] autocomplete textbox

XuTMAH пишет

...Вот неработающий вариант с нажатием кнопки...

Реализация autocomplete не обрабатывает событие keydown, только keypress. Если создать keypress - заработает.

Можно и без события:

Выделить код

Код:

controller. handleKeyNavigation (controller. KEY_DOWN);

Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№912-08-2007 22:52:54

XuTMAH
Участник
 
Группа: Members
Зарегистрирован: 23-05-2007
Сообщений: 32
UA: Firefox 2.0

Re: [?] autocomplete textbox

Infocatcher  пишет

Если известен id этого списка, то, полагаю, можно так:

Нет, id не известен, т.к. следующий код возвращает пустую строку...

Выделить код

Код:

event.target.QueryInterface( Components.interfaces.nsIAutoCompleteInput ).popup.id
Anton  пишет

Реализация autocomplete не обрабатывает событие keydown, только keypress. Если создать keypress - заработает.

Опять я с событиями не угадал :)

Anton  пишет

Можно и без события:

Этот вариант работает как нельзя лучше!!!


Осталась проблема с подтверждение на сохранение паролей...

Отредактировано XuTMAH (12-08-2007 22:55:09)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]