jquery中,attr中回调函数中的第一个参数是什么意思?

<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("img").attr("width",function(n,v){
return v-50;
});
});
});
</script>
这里面,function(n,v){}中的n是什么意思呢?

你好
1、Jquery中,首先.attr() 可以有一个或者两个参数的形式
2、当attr("") 只有一个参数的时候,表示获得该属性值,
例如: $("#img").attr("width"); 是获得 id=img 的控件的 width 属性值
3、当attr("","") 有两个参数的时候,第一个参数表示该控件的属性,
第二个参数代表对该属性的设置,
例如: $("#img").attr("width","300px"); 是设置 id=img 的控件的 width=300px
4、当然,如果是你以上的代码,$("img").attr("width",function(){});
则其中的 function 则是返回一个 ***px 或者 数字,效果就变成如下:
$("img").attr("width","***px"); $("img").attr("width",***);
其实都是一样的,$("img") 代表获得所有的 img 控件,
然后设置其 width=function(){} 的返回值
5、与此系统的,还有 Jquery 的 css() 等方法
-- $("#div").css("width"); 是获得 id=div 的 width
-- $("#div").css("width","100%"); 是设置 id=div 的 width=100%
6、与此类似的,还有 Jquery 的很多其他的方法,例如 .html() .text() 之类的
--- $("#div").html(); 是获得 id=div 的 innerHTML
--- $("#div").html("***"); 是设置 id=div 的 innerHTML="***"
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-04-29
$('selector').attr('attr',function(index,value){
//index=$('selector').index();即该选择器的元素在同级元素索引,方便根据不同的位置
//做不同计算
//value = $('selector').attr('attr');即该元素的当前属性值,
return value;//通过计算得到的值返回给这个赋值给选择到的元素的属性。
//这里我做原样返回

});
第2个回答  2013-10-29
第一个参数为当前元素的索引值,第二个参数为原先的属性值。
第3个回答  推荐于2018-03-20
.attr( attributeName, function(index, attr))
index表示索引

追问

索引再具体点儿呗?什么意思呢?

追答

比如:页面上或许有3个div

$('div').attr('node', function(index, attr){
    console.log(index);//结果是0,1,2
});

本回答被网友采纳
相似回答