элемент move () в функции window.resize () не работает на Android - PullRequest
0 голосов
/ 30 сентября 2011

Это функция move ()

function move(){
/*calculate*/
       var size   = { x: $(window).width(),      y: $(window).height() };
        var scroll = { x: $(window).scrollLeft(), y: $(window).scrollTop() };
        var height = h!=null ? h : this.esqueleto.lightbox.outerHeight();
        var width  = w!=null ? w : this.esqueleto.lightbox.outerWidth();
        var y      = 0;
        var x      = 0;

         //vertically center
        x = scroll.x + ((size.x - width) / 2);

        if (this.visible) {
          y = scroll.y + (size.y - height) / 2;
        } else if (this.options.emergefrom == "bottom") {
          y = (scroll.y + size.y + 14);
        } else {// top
          y = (scroll.y - height) - 14;
        }
/*Process*/
 if (!this.animations.move) {
            this.morph(this.esqueleto.move, {
              'left' : x
            }, 'move');
          }

          this.morph(this.esqueleto.move, {
            'top'  : y
          }, 'move');

        } else {

          this.esqueleto.move.css({
            'left' : x,
            'top'  : y
          });
        }

}

Есть идеи, почему это работает на рабочем столе (во всех браузерах), iphone, .. но не в Android?

1 Ответ

0 голосов
/ 21 декабря 2011

Я почти уверен, что scrollLeft по какой-то причине не работает на Android.Прекрасно работает на iOS, но я никогда не смог заставить его работать на Android.Протестируйте его и посмотрите, действительно ли вы возвращаете ему значение.

Редактировать: не только функция scrollLeft (), но на самом деле все, что связано с горизонтальной прокруткой, похоже, не работает в Android.

Обходной путь, который я использую, чтобы заставить вещи фактически перемещаться влево / вправо, это свойства css:

-webkit-transform -webkit-transition-property -webkit-transition-times-function -webkit-transition-duration

Однако это может не сработать для вас, поскольку вы действительно просто пытаетесь получить значение, а не что-то переместить.

...