在此代码中,函数返回什么?并且该值分配给每个 div 的 id 属性。我发现它为第一个 div 返回 div-id0,为第二个 div 返回 div-id1。为什么会这样?
$("div").attr("id", function (arr) {
return "div-id" + arr;
})
最佳答案
如果您提供一个函数作为 attr
的第二个参数,则该函数将为选择中的每个元素执行一次,并将返回值设置为该元素的属性值。
选择中的位置作为第一个参数传递给回调;属性的当前值作为第二个参数传递。
$("div").attr("id", function (arr) {
return "div-id" + arr;
})
因此这段代码将每个 div
元素的 id
设置为 div-id
加上元素在选择中的位置。所以第一个是 div-id0
,第二个是 div-id1
,等等。
最好将参数命名为index
,而不是令人困惑的arr
。
关于javascript - jquery自动返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6225983/