Статус: Новичок
Группы: Участники
Зарегистрирован: 18.09.2015(UTC) Сообщений: 3
|
Всем привет! Процитирую диалог из соседней ветки: Цитата:Цитата:Цитата:Цитата:Возник небольшой вопрос – можно ли проверять расширение, что называется, "на горячую"? Имеется в виду такая ситуация: у юзера не стоит или выключено расширение, отправляем его в магазин, он там всё делает, возвращается, жамкает по кнопке "проверить ещё раз", но ему показывается то же самое сообщение. По этой кнопке у нас заново выполняется код из cadesplugin_api.js, nmcades_plugin_api.js загружается, но window.cadesplugin не розолвится. Может быть, это проблема хрома, и нужно обязательно обновлять страницу для работы с расширением? В гугле по этому вопросу, на первый взгляд, ничего толкового нет. Попробуйте после нажатия кнопки запустить функцию check_plugin_working(). Попробовал, для этого пришлось всё-таки влезть в код cadesplugin_api.js, сделать этот метод публичным и заново всё инициализировать, ибо со старым объектом-промисом работать уже нельзя. Проблема прежняя – происходит reject window.cadesplugin после таймаута. Нет, такое сделать не получится. Т.к. промис уже rejected. Только перезагрузка cadesplugin_api.js может помочь. Я попробовал добавлять код из cadesplugin_api.js каждый раз при проверке с помощью jQuery.getScript(), но это не помогло. По моему замыслу глобальный объект cadesplugin должен заменяться на новый Promise, и проверка должна проходить, где я ошибаюсь? Заранее спасибо!
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 30.09.2014(UTC) Сообщений: 8 Поблагодарили: 1 раз в 1 постах
|
Присоединяюсь к вопросу. Хотелось бы увидеть возможность перезагрузки плагина без перезагрузки страницы. Пока решил эту проблему используя содержимое cadesplugin_api.js как функцию и добавив прослушку "message" для NPAPI ветки загрузки плагина. P.S.: при создании объектов для работы через NPAPI и добавлении их на страницу неплохо бы было по умолчанию к стилям кроме visibility=hidden добавлять например размеры, чтобы объект не влиял на вёрстку. В моём случае достаточно так: Код:
var elem = document.createElement('object');
elem.setAttribute("id", "cadesplugin_object");
elem.setAttribute("type", "application/x-cades");
elem.setAttribute("style", "visibility=hidden;width: 0px;height: 0px");
document.getElementsByTagName("body")[0].appendChild(elem);
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close