请检查工作示例:http ://codebins.com/bin/4ldqpba/1/Jcarousel%20vertical%20on%20resize
在所有浏览器中测试并且工作正常。赏金是我的 :) 在示例中,我给出了阈值宽度 350,您可以通过调整结果窗格的大小来测试它,并且一旦您开始拥有水平滚动条,它将转换为垂直滚动条。
根据您的要求,1 个可能的问题是,如果您在图像上有任何处理程序,它们将在更改显示方式后消失。它的解决方案是将您的#mycarousel 包装在一个 div 中,并使用 Jquery 委托来处理包装器上的事件,因此事件也没有问题。如果您遇到这种情况,请告诉我。
以下代码完全符合您的需要。
当窗口大小调整为小于 1024px 时,轮播的方向需要从垂直变为水平。
这与示例相反,因为对我而言,如果宽度较小使其垂直则更有意义。
jQuery(document).ready(function() {
    var widthCheck = 1008;
    var resizeTimer = null,
        verticalFlg = $(window).width() > widthCheck;
    var obj = jQuery('#mycarousel').clone();
    $('#mycarousel').jcarousel({
        vertical: verticalFlg,
        scroll: 2
    });
    jQuery(window).resize(function() {
        resizeTimer && clearTimeout(resizeTimer); // Cleraring old timer to avoid unwanted resize calls.
        resizeTimer = setTimeout(function() {
            var flg = ($(window).width() > widthCheck);
            if (verticalFlg != flg) {
                verticalFlg = flg;
                $('#mycarousel').closest(".jcarousel-skin-tango").replaceWith($(obj).clone());
                $('#mycarousel').jcarousel({
                    vertical: verticalFlg,
                    scroll: 2
                });
            }
        }, 200);
    });
})