添加跨浏览器jscrollpane无法正常工作

时间:2013-12-30 06:52:55

标签: javascript jquery html css

您好我正在使用this  更改默认滚动条,这是fiddle 在小提琴中,我正在编写此<div class="scroll-pane horizontal-only">(html部分中的第122行)来更改默认滚动条,但如果我写这个,则整个div消失。This在使用jscrollpane之前显示。

这是jquery

$(function()
            {
                $('.scroll-pane').jScrollPane();
            });

js部分中的第213行,这是css

/* Styles specific to this particular page */
            .scroll-pane
            {
                width: 100%;
                height: 200px;
                overflow: auto;
            }
            .horizontal-only
            {
                height: auto;
                max-height: 200px;
            }

css部分中的第118行

2 个答案:

答案 0 :(得分:2)

正如@Era所说,jScrollpane有一个height: 0,它没有得到父项的高度,因为标签在加载时是隐藏的。

我更改了代码,使其仅在选项卡可见后执行。

<a id="userlink" href="#tab2" data-toggle="tab">Users</a>

$('body').on('shown', '#userlink', function () {
    if(!$('.scroll-pane').hasClass('jspScrollable')) {
      $('.scroll-pane').jScrollPane();
    }
})

See fiddle

答案 1 :(得分:1)

在你的小提琴中,jScrollpane正在使用height:0这是因为jScrollpane将采用父级的高度或根据父容器的高度。你需要为父母设置一些高度,然后才会出现。