2014-02-04 3 views
4

У меня, кажется, проблема с прокруткой к элементу с помощью функции «.mCustomScrollbar (« scrollTo », divID)».mCustomScrollBar «scrollTo, divID» не работает

У меня есть div (id = "# wrapper"), содержащий много divs (что угодно до 800 divs высоты каждый 20px).

Я затем добавить mCustomScrollbar к этому #wrapper DIV использовать его функциональность пользовательских прокрутки так:

$("#wrapper").mCustomScrollbar(); 

Теперь у меня есть большая прокрутка DIV, содержащая «список, как» структура дивы, а не фактический список, просто divs уложены друг на друга, как список.

В другом месте на моей странице у меня есть кнопка, содержащей идентификатор сОн элемента внутри «#wrapper» DIV, когда я нажимаю на эту кнопку, я желаю, чтобы прокрутить Div элемент в поле зрения, это моя нынешняя попытка:

var divID = 'div[id^=' + clickedID +']'; 

$('#wrapper').mCustomScrollbar("scrollTo",divID); 

Эта функция требует, чтобы прокрутить «DIVID» в поле зрения в пределах #wrapper DIV и делает однако проблема у меня есть, что иногда требуется 2 - 4 вызовы функции «scrollTo» перед «DIVID ».

Может кто-нибудь, пожалуйста, помогите мне понять, почему «divID» не просматривает первый вызов функции «scrollTo» и как я могу заставить его работать так, как я ожидаю?

С наилучшими пожеланиями

ответ

4

Я знаю, что я немного опоздал, но, возможно, я могу помочь Вам (или кто-то, попадающие здесь) ...

я имел тот же самый вопрос. Хотите прокрутить выбранный элемент в списке (ли с выбранным классом) и разрешить передачу только пикселя, который я хочу прокрутить.

Некоторые вещи, как:

var objPixelScrollIntoView = $('#myObjToScrollIntoView')[0].offsetTop; 
$('#myDivSetWith_mCustomScrollbar').mCustomScrollbar("scrollTo", objPixelScrollIntoView); 

Или, в частности, к данному случаю:

var objDivPosition = $('div#' + clickedID)[0].offsetTop; // The 'div' before '#' is not necessary, but I want to keep some reference to Your selector 
$('#wrapper').mCustomScrollbar("scrollTo", objDivPosition); 
Смежные вопросы