В данном примере у вас кнопка выровнена по центру, если так то я вам показал на примере как сделать так что бы не надо было отслеживать положение кнопки и передавать его блоку, всегда распологать его относительно центра и маржином чуть сдвигать куда вам надо, тогда при изменение ширины окна браузера блок будет стоять всегда на том же месте.
ну так и копируйте его в начало документа, и выравнивайте только по высоте, узнавая offset().top у кнопки, а по центру центрируйте его относительно центра документа, а дальше margin-left или margin-right в зависимости, как вам надо, кнопка у вас всегда стоит по центру, как я понял.
нельзя если ты задал уже margin: 0 auto; то у тебя слева и справа он выравнивается автоматически, если ты пропишешь еще margin-left то все выравнивания по центру не будет, он будет от левого края выравниваться
у вас оно сейчас сделано статичным, надо что бы при скроле ему добавлялся доп класс, и доп классу уже прописываете стили
{
position: fixed;
top: 0;
left: 50%;
margin-left: -495.5px; /*это что бы оно по центру стояло т.к. оно у тебя сделано фиксированным*/
}
jsfiddle.net/f48ZD/143
Вам ответили на вопрос, дальше все можно и самому подогнать под свои нужды, или вам тогда не сюда, а в фриланс http://freelansim.ru, там все сделают за вас.
тебе надо обновлять слайдер, когда происходит клик по элементу, который открывает всплывающие окно. потому что так у блока стоит display: none; и bx-slider не правильно вычисляет размеры. поэтому когда окно получает display: block; тогда и надо ставить gallerySlider.reloadSlider()