光滑的setPosition不起作用

时间:2015-10-21 14:12:44

标签: slick.js

我在顶部的图层中有一个拇指滑块和一个Slick滑块,通过css隐藏,显示:无。在点击事件中,我调用了setPosition,但它不起作用(

    $scope.getGroupIdColumn = function () {
        var result = new Object();
        result["name"] = 'GroupID';
        result["visible"] = false;
        result["type"] = 'number';
        if ($scope.groupingEnabled) {
            console.log("komt toch: " + $scope.speedDial.grouping);
            var grObj = new Object();
            grObj["groupPriority"] = 0;
            result["grouping"] = grObj;
            return result;
        }
        return result;
    }

错误:无法读取属性'setPosition'为null

3 个答案:

答案 0 :(得分:2)

试试这个:

$('#slider').slick('setPosition');

也许,你必须使用光滑元素的类而不是ID#滑块

$('.slick-slider').slick('setPosition');

来源: http://kenwheeler.github.io/slick/

答案 1 :(得分:1)

如果你使用visibility:none,我建议你使用它。但是你需要使用CSS位置属性来定位它。

<div id="slider" style="visibility:hidden">

如果你使用它,你的div将保留DOM中的高度和宽度,同时启动光滑。你可以看到你的愿望。

$('.show-slider').click(function(){$('#slider').css("visibility","visible");});

无需使用光滑的设置位置。

答案 2 :(得分:0)

引导程序的4个选项卡。您需要在显示的标签事件中触发位置更改。

$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
    $('.yourcarousel').slick('setPosition');
});