Многооконное упакованное приложение Chrome?

Здравствуйте, я новичок в пакетных приложениях Chrome. Как бы я создал изображение кнопки, которое при нажатии запускает новое окно упакованного приложения Chrome, отображающее локальную html-страницу.


person jkphiilips    schedule 01.04.2013    source источник


Ответы (1)


На своей первой html-странице просто добавьте кнопку. Кроме того, эта страница должна будет ссылаться на файл Javascript, чтобы добавить обработчики событий:

<button id="thebutton">Open a New Window</button>
<script src="script.js"></script>

Затем вы добавляете обработчик событий к кнопке в script.js (или как вы назовете свою страницу сценария):

document.querySelector('#thebutton').addEventListener('click', function() {
  chrome.app.window.create('new.html', {"width":300, "height": 200});
});

Если вам нужно, чтобы это окно было помещено в песочницу (например, не использовать политику безопасности контента по умолчанию), вам нужно указать, что страница находится в песочнице в manifest.json:

"sandbox": {
  "pages": ["new.html"]
}

Когда new.html загружен, он будет загружен в своем собственном источнике, который не имеет доступа к открывающемуся окну или к расширенным API. Если вам нужна изолированная страница, чтобы что-то делать с расширенными API, вы можете использовать postMessage и получать сообщения для связи с окном, которое все еще находится в CSP.

person Colselaw    schedule 13.04.2013