转自: http://kaobian.iteye.com/blog/1156551
jQuery的each 方法中的this指针指向问题
jQuery.each 写法:
1 :
- jQuery( 'input[type=checkbox]' ).each(function(){
- alert( this .checked+ this .treeId); //treeI的是自定义属性
- });
这样的写法在IE下会正常的输出,但是在firefox,则不会识别,尤其是对于自定义属性,this指针在闭包的时候出现差错。
2:
- jQuery.each(jQuery( 'input[type=checkbox]' ),function(i,item){
- alert( "i=" +i+ ",item=" +jQuery(item).attr( '自定义属性' ));
- });
这样写就会避免使用this指针,就可以兼容ie和firefox了,i是代表当前是第几个变量,而item则代表这个变量所指的对象,是dom对象
所以我个人建议以后我们用jQuery 的each 方法 都用 第二种写法