我刚刚找到了这个jScrollPane插件,试图让它设置并在我的页面上工作。在我的页面上,我有一个外部分区
< div id="myList" class="scroll-pane" >
包装多个其他div - 每个内部div在屏幕上基本上是一行,其中有3个输入字段。因此,当屏幕首次加载时,服务器端会创建足够的div来显示db中的现有记录。然后,在呈现页面之后,我使用javascript创建一个额外的div(行),其中包含用于数据输入的空输入字段。这是“滚动窗格”类的CSS:
.scroll-pane {
width: 100%;
height: 380px;
overflow: auto;
}
这是我的jScrollPane设置 - 这是在$(document).ready(function() - 就是这样:
$('#myList').jScrollPane();
$(document).ready()中的下一个内容是我用空输入添加新div。在那里,我在文档中看到的示例之后对其进行了图案化,所以它看起来像这样:
var newItemHTML = '<div> .... </div>';
var newItem = $(newItemHTML);
var pane = $('#myList');
pane.jScrollPane();
var api = pane.data('jsp');
api.getContentPane().append(newItem);
api.reinitialise();
api.scrollToBottom();
所以我将滚动条放在myList div上,我的目标是让它始终显示底部div(空输入行),如有必要,滚动以执行此操作。 以下是我想要纠正的事情:
当页面出现时,添加最后一个div的javascript确实有效,但是新的div不是直接出现在原始的最后一个div下面,而是新的div一直到底部,这是不可见的在此刻。我能让它出现的唯一方法是通过字段标记直到我到达它。我无法滚动到它。
滚动行为似乎很奇怪。首先,没有可见的拇指。我可以向上和向下拖动一个假想的拇指,这会引发一些滚动,但会发生的是顶部的div(行)丛向下跳到底部,在顶部留下垂直间隙。
当我使用verticalGutter属性尝试将滚动条移近内容的实际边缘时,滚动条不会移动 - 它会拉伸我的内容,因此右边缘更接近滚动条。
令人沮丧。我想也许我在这里错过了一些基本的东西?任何帮助最感谢! (哦,是的 - 我正在使用Chrome 17.0.963.83)
布赖恩