|
Выжиг мозга с полем HTML документа | ☑ | ||
---|---|---|---|---|
0
vudo
12.09.13
✎
17:54
|
В управляемой форме создаем реквизит "Карта" тип строка.
На форме создаем поле тип "поле HTML документа". Путь к данным карта. В модуле формы пишем: //=========================== &НаСервере Процедура ЗаполнитьТекстКарты() Карта = " |<!DOCTYPE HTML> |<html> | <head> | <meta http-equiv=""Cache-Control"" content=""no-cache""> | <meta http-equiv=""Cache-Control"" content=""max-age=1, must-revalidate"" /> | <title>OpenLayers Demo</title> | <style type=""text/css""> | html, body, #basicMap { | width: 100%; | height: 100%; | margin: 0; | } | </style> | <script src=""http://openlayers.org/dev/OpenLayers.js""></script> | <script> | function init() { | map = new OpenLayers.Map(""basicMap""); | var mapnik = new OpenLayers.Layer.OSM(); | var fromProjection = new OpenLayers.Projection(""EPSG:4326""); // Transform from WGS 1984 | var toProjection = new OpenLayers.Projection(""EPSG:900913""); // to Spherical Mercator Projection | var position = new OpenLayers.LonLat(13.41,52.52).transform( fromProjection, toProjection); | var zoom = 3; | | map.addLayer(mapnik); | map.setCenter(position, zoom ); | } | </script> | </head> | <body onload=""init();""> | <div id=""basicMap"" ></div> | </body> | <script> | init(); | </script> |</html> |"; КонецПроцедуры &НаКлиенте Процедура ПриОткрытии(Отказ) ЗаполнитьТекстКарты(); КонецПроцедуры //================================ Открываем форму. Все прекрасно работает. Закрываем форму. Опять открываем. Карта убегает вниз. Закрываем форму. Чистим кэш IE. Открываем форму. Все опять прекрасно работает. Кто знает как сделать, что бы из кэша не тянуло? |
|||
1
vudo
12.09.13
✎
17:59
|
В коде не нужно
| <script> | init(); | </script> Но это к проблеме отношение не имеет. |
|||
2
sda553
12.09.13
✎
18:03
|
Чтобы не тянуло из кэш принято делать рандомный url к кэшируемому ресурсу, добавлением какого нибудь. ?sid=123f4ac
где 123f4ac есть случайный идентификатор. Возможно, мой способ устарел |
|||
3
vudo
12.09.13
✎
20:26
|
(2) И куда его в "поле HTML документа"? Этот url?
Можно конечно в Документ, но с ним можно работать только после того как элемент уже загружен... Так что способ пройдет, но не в данном случае. |
|||
4
vudo
12.09.13
✎
20:34
|
В вообще-то кэш в поле HTML документа при загрузке текста из переменной смысла особо не имеет, т.к. содержимое собственно должно меняться динамически.
Моно поступить по другому, переписать java-скрипт OpenLayers.js на 1с, но это имхо геморно. Просто реально столько времени нет. Хотя и возможно. Так что есть еще предложения как обойти. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |