始终显示niceScroll轨(Always display niceScroll rail)

2019-09-20 02:58发布

我使用niceScroll jQuery插件替换溢出常见的浏览器滚动条<div>'s 。 该插件的工作很好,但我不能让它工作, 始终显示滚动导轨(即使内容不超过<div>边界)。 我的最终配置是:

$(document).ready(function () {
    $(".div-wrapper").niceScroll({
        cursorcolor: "#333",
        cursoropacitymin: 0.3,
        background: "#bbb",
        cursorborder: "0",
        autohidemode: false,
        cursorminheight: 30
    });
};

我试着火$(".div-wrapper").getNiceScroll().show()但它似乎没有任何工作。

任何帮助,将不胜感激,谢谢

Answer 1:

首先,你必须在最后丢失的圆括号 -那会是你的问题?

设置autohidemode为false仅意味着当用户停止滚动,然后再次出现在滚动时不会消失。 不幸的是,这并不意味着如果内容不溢出是可见的。

作为一种变通方法,你可以尝试将这个元素与ID = ascrail2000像这样的东西您的来电.niceScroll()后,明确地可见:

$(document).ready(function () {
    $(".div-wrapper").niceScroll({
        cursorcolor: "#333",
        cursoropacitymin: 0.3,
        background: "#bbb",
        cursorborder: "0",
        autohidemode: false,
        cursorminheight: 30
    });
    $('#ascrail2000').show();
});

查看丢失PAREN在最后一行

您可能需要使其子元素可见的还有:

    $('#ascrail2000 *').show();

(请确保该元素的ID是ascrail2000你的情况。)

更新:如VERITAS指出,使用更普遍的选择div[id^='ascrail']来代替#ascrail2000使其成为多个nicescroll工作在一个页面上,所以上面的可以用JavaScript来实现:

    $("div[id^='ascrail']").show();

或CSS:

    div[id^='ascrail'] { display: block; }

或者如果上述不工作:

    div[id^='ascrail'] { display: block !important; }

这还不是最完美的解决方案,但恐怕这是目前解决这个问题,因为nicescroll插件没有一个选项来选择行为的唯一途径。 幸运的是nicescroll开源和可在GitHub这样一个可以很容易地叉它,并添加这样的选项或发布功能要求在GitHub上。



Answer 2:

$(".div-wrapper").niceScroll({
    cursorcolor: "#333",
    cursoropacitymin: 0.3,
    background: "#bbb",
    cursorborder: "0",
    autohidemode: false,
    cursorminheight: 30
});


Answer 3:

我假设,如果内容不溢出边界框,niceScroll什么都不做,这可能是你的问题。 请记住,niceScroll不> $溢出:滚动; ......没有通过插件本身挖我不能肯定,但我会假设它有内置的检查测试的内容是否需要滚动,如果没有,那么函数默默退出。



Answer 4:

我看到这个答案与谷歌搜索,即使是老了,这是我工作的解决方案,如果有人看到此寻求一个答案:

        $('#ascrail2000.nicescroll-rails').show();
        $('#ascrail2000.nicescroll-rails div').height('300px').show();

我需要到任意高度设置为“栏中的” DIV,因为默认情况下它的高度:0像素,即使你显示出来,你看不到任何东西。 我想我们可以做的更好的计算与窗口尺寸的合适的高度,但我不需要:)



Answer 5:

现在,2018年7月2日 ,工作版本jquery.nicescroll v3.7.6 来源链接

加入后autohidemode: false它的工作对我罚款。

$("#example").niceScroll({
   autohidemode: false       // it make nicescroll scroll bar visible all time
});


文章来源: Always display niceScroll rail