Дополнения и расширения Firefox: получение пользовательского ввода - PullRequest
1 голос
/ 20 ноября 2010

Настройка: Допустим, вы щелкаете где-нибудь на этой странице, и у вас есть расширение Firefox, которое отвечает, вставляя <div> с <input type="text"> в документ, расположенный в том месте, гдеВы щелкнули.

Проблема: Я не могу получить это текстовое поле, чтобы принять ввод пользователя.Похоже, что это только для чтения.Есть ли какая-то конфигурация, которую я должен установить в chrome.manifest или в другом месте?Разрешено ли таким образом получать пользовательский ввод в расширениях Firefox?Если да, может кто-нибудь указать мне правильное направление?

Примечание: я смог установить значение с помощью prompt();, но я бы просто набрал <input> как обычно.

Заранее спасибо.

1 Ответ

2 голосов
/ 20 ноября 2010

Используете ли вы event.preventDefault() для захвата щелчков мыши?Это может быть причиной того, что текстовое поле выглядит только для чтения - оно никогда не может получить фокус.Чтобы исправить это, используйте:

textbox.addEventListener('click', function(event) {
    event.stopPropagation();
}, false);

Это предотвратит всплывание события click до вашего общего обработчика событий, используемого для перехвата большинства щелчков мыши.

...