динамическое содержимое jScrollPane

я пытался использовать следующий плагин jquery: http://jscrollpane.kelvinluck.com/dynamic_content.html
но мне все еще не удается повторно инициализировать API

У меня есть div (id=content), который получает ответ от метода load() (jquery), в конце концов, я снова использую $('#content).jScrollPane() для обновления полосы прокрутки, но безуспешно =\

Может кто-нибудь помочь мне? Благодарность!


person davi    schedule 22.04.2011    source источник
comment
смешно у меня такая же проблема! Я могу загрузить содержимое, а затем выполнить $('#content).jScrollPane(), и это покажет полосы прокрутки. повторение этого (при обновлении содержимого) заставляет jScrollPane перестать работать. Я знаю, что нам нужно повторно инициализировать(), но пока не понял, как это сделать.   -  person djeetee    schedule 24.04.2011
comment
вот ответ... я объявил 2 глобальные переменные var _jsp_api; вар _$items_list; (через секунду вы увидите причину), затем при загрузке документа я выполняю эти 2 состояния: _jsp_api = $(.scroll-pane).jScrollPane(любые параметры jsp, которые вам нужны).data('jsp'); _$items_list = _jsp_api.getContentPane(); теперь каждый раз, когда вам нужно обновить содержимое прокручиваемой области, вы будете использовать _$items_list вместо того, что вы использовали раньше, и когда содержимое изменится, вы должны выполнить: _jsp_api.reinitialise(); это все люди. надеюсь это поможет.   -  person djeetee    schedule 25.04.2011


Ответы (2)


Быстрый гугл выдает следующее

http://jscrollpane.kelvinluck.com/dynamic_content.html

function refreshNav() {
    var pane = $('YOUR SELECTOR');
    var api = pane.data('jsp');
    api.reinitialise();
}

Очень хорошо работает......

person pixelvoid    schedule 07.11.2011

... и если вы хотите обновить все панели прокрутки на вашем сайте, используйте это:

function refreshPane() {
  var pane = $('YOUR SELECTOR').each(function(){
    var api = $(this).data('jsp');
    api.reinitialise();
  });   
}
person swys    schedule 19.01.2012