$ (окно) .resize сбрасывает позицию прокрутки - PullRequest
0 голосов
/ 28 ноября 2011

Следующий фрагмент кода не мой, он из плагина jQuery под названием Blueberry.

https://github.com/marktuk/Blueberry

Моя проблема с кодом в том, что когда

//bind setsize function to window resize event
$(window).resize(function(){
    setsize();
});

выполняет это, сбрасывает позицию прокрутки, заставляя браузер пользователя возвращаться наверх.

Я думаю, что эта проблема только на Chrome в OSX.

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

Если я раскомментирую setsize (), это все равно произойдет, если я удалю $ (window) .resize остановится ...

Кто-нибудь знает, почему это происходит, и если есть решение проблемы?

Если у кого-то тоже есть решение, то на странице Github для Blueberry есть проблема, так что вы можете отправить запрос на извлечение с исправлением.

Редактировать:

В соответствии с запросом, здесь есть функция setsize, но учтите, что я могу раскомментировать функцию setsize, и она все еще меняет положение прокрутки.

var setsize = function(){
   sliderWidth = $('.slides', obj).width();
   cropHeight = Math.floor(((sliderWidth/imgRatio)/o.lineheight))*o.lineheight;
   $('.slides', obj).css({height: cropHeight});
};

1 Ответ

0 голосов
/ 28 ноября 2011

Так что в итоге я решил мою проблему, все сводилось к тому, что в моем элементе была установлена ​​высота.

Теперь, почему это привело к тому, что $ (window) .resize вернулось к началу страницы ... Я не знаю!

Если бы кто-нибудь смог решить это, было бы здорово.

...