如何将值传递给JQUery回调方法?

时间:2017-04-18 17:16:09

标签: jquery css

我遇到了以下示例,将css样式设置为div标记。我怀疑,功能参数中的' 索引'值有多大价值。或者如果用户想传递索引值,那么如何传递索引参数的值(即用法)来回调函数?

$( "div.example" ).css( "width", function( index ) {return index * 50;});

2 个答案:

答案 0 :(得分:2)

index是所有元素中元素的索引。你不应该传递那个值。

假设在div中有3个带有类example的元素,则第1个元素的索引将为0,其宽度将设置为0px (0*50)。第二个元素的索引为1,宽度设置为50px (1*50),第三个元素的索引为2,宽度设置为100px (2*50)

答案 1 :(得分:0)

索引值在回调函数中从零开始,并且增加1(默认值)。

如果要初始化或设置特定值,则必须以这种方式执行此操作:

        $("div").css('width', function(i) {
            i = 5;
            return (i * 50);
        });

但是,对于所选元素,index的值始终设置为5。所以,我建议你以这种方式使用索引值的默认功能。

        $("div").css('width', function(i) {
            ++i;     // or i++;
            return (i * 50);
        });

在这里,我增加了索引i只是为了跳过零值。

OR

如果要将某些起始值设置为索引,请参阅以下代码段:

    let j = 5;
    $("div").css('width', function(i) {
        i = inc();
        function inc() {
            j++;
            return j; 
        };
        return (i * 50);
    });

希望你现在可以获得预期的输出。 :):)