jssor滑块响应Angular 2

时间:2017-03-04 10:56:43

标签: javascript angular jssor

我已跟随this answer在angular2中添加jssor。我已将下面的javascript代码添加到文件中,并在angular-cli.json中调用。

jssor_1_slider_init = function() {

        var jssor_1_options = {
          $AutoPlay: true,
          $AutoPlaySteps: 4,
          $SlideDuration: 160,
          $SlideWidth: 200,
          $SlideSpacing: 3,
          $Cols: 4,
          $ArrowNavigatorOptions: {
            $Class: $JssorArrowNavigator$,
            $Steps: 1
          },
          $BulletNavigatorOptions: {
            $Class: $JssorBulletNavigator$,
            $SpacingX: 1,
            $SpacingY: 1
          }
        };

        var jssor_1_slider = new $JssorSlider$("jssor_1", jssor_1_options);

        function ScaleSlider() {
            var refSize = jssor_1_slider.$Elmt.parentNode.clientWidth;
            if (refSize) {
                refSize = Math.min(refSize, 809);
                jssor_1_slider.$ScaleWidth(refSize);
            }
            else {
                window.setTimeout(ScaleSlider, 30);
            }
        }
    };

我观察到ScaleSlider()函数用于缩放滑块但不调用。

如何在角度2中使其响应?

1 个答案:

答案 0 :(得分:0)

/*responsive code begin*/
/*remove responsive code if you don't want the slider scales while window resizing*/
function ScaleSlider() {
    var refSize = jssor_1_slider.$Elmt.parentNode.clientWidth;
    if (refSize) {
        refSize = Math.min(refSize, 809);
        jssor_1_slider.$ScaleWidth(refSize);
    }
    else {
        window.setTimeout(ScaleSlider, 30);
    }
}
ScaleSlider();
$Jssor$.$AddEvent(window, "load", ScaleSlider);
$Jssor$.$AddEvent(window, "resize", ScaleSlider);
$Jssor$.$AddEvent(window, "orientationchange", ScaleSlider);
/*responsive code end*/