Страница 1 из 1

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

Добавлено: 29 ноя 2010, 12:26
Mavka
Суть. В частности для WMS не работает mergeNewParams.
Советуют заменить apply на call.

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

Добавлено: 29 ноя 2010, 12:32
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 - нет.

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

Добавлено: 29 ноя 2010, 13:56
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);
         }
     },