Jquery.each 兼容IE,firefox

转自:http://kaobian.iteye.com/blog/1156551

jQuery的each 方法中的this指针指向问题


jQuery.each  写法: 
1 : 
Java代码   收藏代码
  1. jQuery('input[type=checkbox]').each(function (){  
  2.   
  3.         alert(this.checked+this.treeId);//treeI的是自定义属性  
  4. });  


这样的写法在IE下会正常的输出,但是在firefox,则不会识别,尤其是对于自定义属性,this指针在闭包的时候出现差错。 

2: 
Java代码   收藏代码
  1. jQuery.each(jQuery('input[type=checkbox]'),function (i,item){  
  2.         alert("i=" + i + ",item="+jQuery(item).attr('自定义属性'));  
  3. });  

这样写就会避免使用this指针,就可以兼容ie和firefox了,i是代表当前是第几个变量,而item则代表这个变量所指的对象,是dom对象 

所以我个人建议以后我们用jQuery 的each 方法 都用 第二种写法


你可能感兴趣的:(Jquery.each 兼容IE,firefox)