OpenLayers: баг в Опере 10.50+

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

OpenLayers: баг в Опере 10.50+

Сообщение Mavka »

Суть. В частности для WMS не работает mergeNewParams.
Советуют заменить apply на call.
Последний раз редактировалось Mavka 29 ноя 2010, 13:56, всего редактировалось 3 раза.
лангольеры под окном жрали время ом-ном-ном
Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: OpenLayers: баг в Опере

Сообщение Mavka »

Вариант:

Код: Выделить всё

OpenLayers.Layer.HTTPRequest.prototype.redraw = function(force) { 
    if (force) {
        return this.mergeNewParams({"_olSalt": Math.random()});
    } else {
        return OpenLayers.Layer.prototype.redraw.call(this, []);
    }
} 
В OpenLayers 2.10 работает, в 2.8 - нет.
Последний раз редактировалось Mavka 29 ноя 2010, 13:57, всего редактировалось 1 раз.
лангольеры под окном жрали время ом-ном-ном
Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: OpenLayers: баг в Опере 10.50+

Сообщение Mavka »

Вариант от old_Bibigon:

Патч библиотеки OpenLayers (проверено на OL 2.8):

Код: Выделить всё

+++ OpenLayers/Layer/HTTPRequest.js    2010-11-29 11:59:12 +0300
@@ -138,7 +138,8 @@
         if (force) {
             return this.mergeNewParams({"_olSalt": Math.random()});
         } else {
-            return OpenLayers.Layer.prototype.redraw.apply(this, []);
+            return OpenLayers.Layer.prototype.redraw.call(this);
         }
     }, 
лангольеры под окном жрали время ом-ном-ном
Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость