Javascript jquery自动返回值
在这段代码中,函数返回什么?该值被分配给每个div的id属性。我发现它返回第一个div的div-id0,第二个div的div-id1。为什么会发生这种情况Javascript jquery自动返回值,javascript,jquery,return,Javascript,Jquery,Return,在这段代码中,函数返回什么?该值被分配给每个div的id属性。我发现它返回第一个div的div-id0,第二个div的div-id1。为什么会发生这种情况 $("div").attr("id", function (arr) { return "div-id" + arr; }) 看 在文件中 .attr(attributeName,function(index,attr)) attributeName要设置的属性的名称 函数(index,attr)返回要设置的值的函数。这是当前元素接收集
$("div").attr("id", function (arr) {
return "div-id" + arr;
})
看
在文件中
.attr(attributeName,function(index,attr))
attributeName
要设置的属性的名称
函数(index,attr)
返回要设置的值的函数。这是当前元素接收集合中元素的索引位置和旧属性值作为参数。
将函数传递给jQuery或在jQuery中传递函数时,传递给函数的第一个参数是当前的数组索引,第二个参数是您试图为当前元素设置的属性的当前值,如果您将函数作为第二个参数提供给
attr
,该函数对选择中的每个元素执行一次,返回值设置为该元素的属性值
选择中的位置作为第一个参数传递给回调;属性的当前值作为第二个参数传递
$("div").attr("id", function (arr) {
return "div-id" + arr;
})
因此,此代码将每个div
元素的id
设置为divid
加上元素在选择中的位置。因此,第一个将是div-id0
,第二个是div-id1
,等等
最好将参数命名为index
,而不是让人费解的arr
查看显示:.attr(attributeName,function(index,attr))
。因此,arr
是元素集中元素的索引。