Разработка расширений: линейка прокрутки Frozen Firefox и неработающие горячие клавиши - PullRequest
0 голосов
/ 24 ноября 2010

Я пишу расширение Firefox, которое создает Java-апплет на странице.

функция addApplet (aDocument, url, classfile, archive) {
if (navigator.javaEnabled ()){
var anApplet, body;
body = aDocument.getElementsByTagName ('body') [0];
anApplet = aDocument.createElement ('applet');
anApplet.setAttribute ('CODEBASE' ', url);
anApplet.setAttribute ('code', classfile);
anApplet.setAttribute ('archive', archive);
anApplet.setAttribute ('name', "Applet");
anApplet.setAttribute ('width', "0");
anApplet.setAttribute ('height', "0");
body.appendChild (anApplet);
}
}

Файл JAR, загруженный из апплета, имеет размер 500 КБ.Я заметил, что иногда расширение вызывает зависание вертикальной полосы прокрутки Firefox и прекращение работы горячих клавиш.Полоса прокрутки и горячие клавиши работают нормально, если я запрещаю расширению добавлять апплет на страницу.

Другое странное поведение - на замороженной странице, если я щелкаю внутри любого поля текста / поиска или дажев адресной строке скроллер и горячие клавиши снова начинают работать.То же самое происходит, если я переключаю вкладки или сверну окно браузера.

Я использую Firefox 3.6.12 на WindowsXP.

Пожалуйста, помогите мне, если у вас есть идея по этому поводу или я должен предоставить больше информации.

(Эй, ребята, эта проблема все еще не решена ...., пожалуйста, помогите мне с этим......)

Спасибо

Ответы [ 3 ]

0 голосов
/ 24 ноября 2010

Апплеты могут быть хитрыми. Я бы предложил сначала создать страницу из чистого HTML, которая работает.

Что касается предложений по изменению, первое, что нужно изменить, - это ширина / высота апплета. Апплет с размером 0 может вызвать все виды проблем. Вместо этого дайте ему значение WxH 20 (а затем скрыть его с помощью CSS).

0 голосов
/ 21 февраля 2011

Хорошо, это сработало:

Решение: Это поведение по умолчанию с JDK 1.3.Однако вам может потребоваться предотвратить фокусирование апплета при запуске, например, если ваш апплет невидим и вообще не требует фокусировки.В этом случае вы можете установить в false специальный параметр initial_focus в теге HTML следующим образом:

<applet code="MyApplet" width=50 height=50>
*<param name=initial_focus value="false">*</applet>

Cheers,

0 голосов
/ 24 ноября 2010

Посмотрите, произойдет ли что-то подобное, если вы загрузите апплет со страницы html, которая содержит тег и его дочерние элементы в качестве статического содержимого, а не контент, добавляемый в DOM.Java, а не ваш код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...