Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用一组jQuery代码制作多个滑块_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 使用一组jQuery代码制作多个滑块

Javascript 使用一组jQuery代码制作多个滑块,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我已经用jQuery制作了一个滑动条,它使用html标记,这些标记有类而不是ID,这样我就可以对其他重复的滑动条使用相同的jQuery代码 问题是,我希望ul的宽度是基于lis的数量来计算的,而不是在CSS中手动设置。当只有一个滑块时,我可以在函数外部设置变量,但当我必须通过html部件上的事件属性使用它,以便能够将它们用于多个滑块时,我必须在函数内部移动变量,这会设置错误的宽度 这是我的代码: function OLAR(direction,span) { var OurNe

我已经用jQuery制作了一个滑动条,它使用html标记,这些标记有类而不是ID,这样我就可以对其他重复的滑动条使用相同的jQuery代码

问题是,我希望ul的宽度是基于lis的数量来计算的,而不是在CSS中手动设置。当只有一个滑块时,我可以在函数外部设置变量,但当我必须通过html部件上的事件属性使用它,以便能够将它们用于多个滑块时,我必须在函数内部移动变量,这会设置错误的宽度

这是我的代码:

 function OLAR(direction,span) {
        var OurNexNPrv = $(span);
        var Parent_OLAR = OurNexNPrv.parents('.OLAR');
        var UL_OF_OLAR = Parent_OLAR.find('.OLAR_CONTENT ul');
        var LI_OF_OLAR = UL_OF_OLAR.find('li');
        var LI_OF_OLAR_LENGTH = LI_OF_OLAR.length;
        var Quantity_OF_OLAR_PAGES = LI_OF_OLAR_LENGTH / 3;
        var Max_Margin_LEFT = -(Quantity_OF_OLAR_PAGES - 1) * 576;
        UL_OF_OLAR.css('width',LI_OF_OLAR_LENGTH*192);

        var AffectedLeftMargin;
        var CurrentLeftMargin = UL_OF_OLAR.css('margin-left');

        CurrentLeftMargin = parseFloat(CurrentLeftMargin);

        if (direction == 'right') {
            AffectedLeftMargin = CurrentLeftMargin - 576;
        }
        if (direction == 'left') {
            AffectedLeftMargin = CurrentLeftMargin + 576;
        }

        if (AffectedLeftMargin < Max_Margin_LEFT) {
            AffectedLeftMargin = 0;
        }

        if (AffectedLeftMargin > 0) {
            AffectedLeftMargin = Max_Margin_LEFT;
        }

        UL_OF_OLAR.animate({'marginLeft': AffectedLeftMargin}, 1000);
    }

    $('.CIRCLE_LOAD_RIGHT').click(function () {
        OLAR('right');
    });

    $('.CIRCLE_LOAD_LEFT').click(function () {
        OLAR('left');
    });

如何通过该功能之外的css命令单独设置每个uls的宽度?

好的,我的ul标签没有绝对位置;在根据您的语言为它指定了正确的位置和左:0和下:0或右:0和下:0之后,来自JQuery代码的给定宽度可以与其他所有内容完美地押韵。我用多个滑块试过,效果非常好: 因此,我们需要一个锚定点,以使这项工作。上面提到的JQuery代码没有任何问题! 祝你今天愉快