Страницы: 1
Добрый день.
Мне необходимо:
Открыть шаблон HTML страницы с локального компьютера (потому что это имхо просто легче чем генерировать страницу с нуля) и вставить в него данные.
Далее вывести диалог на сохранение страницы.
Вот так заполняем содержимое шаблона.
var TabOpen = gBrowser.addTab('Путь к файлу на локальном компьютере'); var Tab = gBrowser.getBrowserForTab(TabOpen); Tab.addEventListener("load", function () { var recipientHTML = Tab.contentDocument.body.innerHTML // Тут работаем с recipientHTML как со String и меняем все что нужно. Tab.contentDocument.body.innerHTML = recipientHTML; //Тут записываем новое содержимое страницы. }, true);
Вцелом все работает, текстовые переменные заменяются и сразу же отображаются в новых значениях.
Но есть проблема, на странице есть интерактивная карта и даже тогда когда я просто перезаписываю innerHTML (как есть) без изменений, карта визуально "замерзает" и с ней невозможно взаимодействовать.
У карты следующий код:
<link href=".files/vlmaps.css" type="text/css" rel="stylesheet"> <div id="map" class="map"></div> <script> mapService.initMap('map', 15585, {zoom: 11, center: [131.9, 43.1], defaultCenter: [131.9, 43.1], places: [ [131.9, 43.1], ] }); </script>
То есть если просто открыть страницу-шаблон (без изменения), то карту можно двигать, менять масштаб и т.д.. Однако, если перезалить в ней innerHTML, то карта как будто замирает на прошлых координатах. И не дает себя сдвигать или работать с ней.
Обновление страницы через f5 не помогает, карта не "оживает". Помогает только сохранить страницу на диск и открыть заново с диска, тогда карта работает.
Так же заметил, что Firefox после замены чего-нибудь в innerHTML и заливки нового содержимого, если просмотреть исходный код - выдает код старой страницы, а не новой (которая была залита как innerHTML).
Может быть кто-нибудь знает как решить эту проблему???
Не могу найти как приложить файл. Вот ссылка на файл vlmaps.css:
Отредактировано Medison1 (05-09-2015 05:33:46)
Отсутствует
Страницы: 1