0

如果我安装 jScrollPanel 它可以正常工作,但是当我尝试从 ajax 捕获内容时,它不会生成滚动条,因为它仍然认为其中没有内容。

所以我的问题是,我怎样才能重新渲染 jScrollPanel,所以它现在必须打开/关闭滚动条?

这是我的捕捉脚本:

 "chatlog": function() {
      $.ajax({url: '?chatlog=&' + new Date(),success: function(data){
         if ( nagoom.trim(data) != "") {
            $('#__chatlog').html(data);

        }
      }});
     }

这是我安装它的地方:

$('aside .chat-entity').jScrollPane({
        showArrows: true,
        verticalGutter: -13,
        autoReinitialise: true
});

我正在使用这个脚本http://jscrollpane.kelvinluck.com/less_basic.html

4

1 回答 1

0

显然 API 对象上有一个 reinitialise 方法。将此包含在您的响应函数中。更多信息可以在这里找到

编辑:我以前没有使用过这个脚本,所以我犹豫是否提供代码,但我认为它会像这样工作:

success: function(data){
     if ( nagoom.trim(data) != "") {
        $('#__chatlog').html(data);
        jScrollPaneObjectReference.data('jsp').reinitialise();
    }
  }

其中 jScrollPaneObjectReference 是您构建面板时返回的对象

编辑:我会进一步澄清。jScrollPaneObjectReference 应该引用执行此操作时返回的对象:

$('aside .chat-entity').jScrollPane({ showArrows: true, verticalGutter: -13, autoReinitialise: true }); 

尝试将其放在代码的顶部:

window.jScrollPaneObjectReference = $('aside .chat-entity').jScrollPane({ showArrows: true, verticalGutter: -13, autoReinitialise: true });

编辑:尝试删除 autoReinitialise 参数。

于 2012-10-07T09:36:56.107 回答