Javascript - 在调整大小时更改变量不能与JSSOR Slider一起使用

时间:2017-08-07 10:06:43

标签: javascript jquery jssor

我正在尝试更改var screenWidth;将窗口大小调整为移动时。它在我加载时工作,但在调整大小时却没有。我在这里错过了什么?我正在使用jssor滑块。我可以在控制台中看到screenWidthFunction()正在运行。

JS:

    var screenWidth;

    function screenWidthFunction() {

        if( $(window).innerWidth() < 768 ) {            
            screenWidth = 960;
            console.log(screenWidth);
        } else {
            screenWidth = 1920;
            console.log(screenWidth);
        }

    }

    //var screenWidth = 1920;

    screenWidthFunction();

    function ScaleSlider_home_1() {
        var refSize_home_1 = jssor_home_1_slider.$Elmt.parentNode.clientWidth;
        if (refSize_home_1) {
            refSize_home_1 = Math.min(refSize_home_1, screenWidth);
            jssor_home_1_slider.$ScaleWidth(refSize_home_1);
        }
        else {
            window.setTimeout(ScaleSlider_home_1, 30);
        }
    }
    ScaleSlider_home_1();

    $(window).bind('load',function(){
        //screenWidthFunction();
        ScaleSlider_home_1();
    });              

    $(window).bind('resize',function(){
        screenWidthFunction();
        ScaleSlider_home_1();
    });            

    $(window).bind('orientationchange',function(){
        //screenWidthFunction();
        ScaleSlider_home_1();
    });

这是我的小提琴:http://jsfiddle.net/df58scsk/1/

2 个答案:

答案 0 :(得分:0)

你可以试试这个

$(window).resize(function() {
    screenWidthFunction();
    ScaleSlider_home_1();
});

您不需要绑定事件

答案 1 :(得分:0)

您可能需要以下示例之一,

https://github.com/jssor/slider/blob/master/examples/full-window-contain-mode.html https://github.com/jssor/slider/blob/master/examples/full-window-cover-mode.html

我们将在几天内发布25.3.0版本,它带有针对移动设备的全窗口flex-mode.html。