几次触发后jScrollpane行为不端

时间:2011-12-09 02:21:56

标签: jquery asp.net-mvc-3 scrollbar jscrollpane

我在我的网站中使用jscrollpane http://jscrollpane.kelvinluck.com/并且它正常工作,但不是100%。

要清楚,我在图像列表中使用jscrollpane来满足水平溢出。图像位于div内,一旦用户点击不同的按钮,我将更改div内容。因此,我需要将maintainPosition设置为false以确保在div内容更改后,它不会向右“过度滚动”并使左侧的内容不可见。

这是我的代码:

// function to change the div content
function getContainerImg(cid) {

// Use jscrollpane api function to enable reinitialization
    var scrollelement = $('#containersimg').jScrollPane({ maintainPosition: false });
    var api = scrollelement.data('jsp');
    $.ajax({
        async: false,
        url: '@(Url.Action("GetContainersImg", "Kitchen"))',
        type: 'GET',
        data: { name: cid },
        success: function (result) {

            api.getContentPane().html(result);
            // Needed to apply jscrollpane after change new container type
            api.reinitialise();

            $('#containersimg').effect('slide', 500);

我在测试期间测试了几个场景,发生了一些奇怪的行为:

  1. 如果我打开我的网站并暂停一段时间,则维护位置无法正常工作,使更新的图像不可见
  2. 如果我点击按钮多次切换内容,滚动条会消失一段时间,只有在我再次触发内容更改时才会重新显示
  3. 编辑: 包括一张图片来说明我的情况: enter image description here

    编辑2: 在此处包含完整代码:

    pastebin.com/qfVSp2tq 的CSS:

    pastebin.com/FdMXhS5B

    滚动条的丢失越来越频繁......

    知道为什么会出现这个问题?这是一个非常重要的错误,因为如果滚动条保持其最右侧位置或滚动条根本不显示,用户可能无法看到内容。

    我在想可能的原因可能是我构建滚动条的顺序。任何建议? 非常感谢你......

1 个答案:

答案 0 :(得分:0)

我有一个混乱,可能它会帮助你,看到当你点击图像滑下500,但是在ajax请求是否有任何内容被收到?,可能空内容覆盖你的最后3个图像,并且因为收到空内容你什么也看不见,我不确定,但可能是......