jQuery 错误使用this指示符

收藏
JQuery
2
Feb 3, 2018

jQuery 错误使用this指示符

回答

星辰回答

问题分析:

this指示符存在于一定的上下文中的,当上下文变化时this指向不同的对象。如果还想调用原上下文中的this,则需要在原上下文中缓存原this对象($that = $(this))。

问题解答:

//错误的写法
$( "#myList").click( function() {
   $(this).method(); 
   $("#myList li").each( function() {
      //this并不指向myList
      $(this).method(); 
   })
});
//正确的写法
$( "#myList").click( function() {
   $(this).method(); 
   var $that = $(this);
   $("#myList li").each( function() {
      
      $that.method(); 
   })
});

 

(1)

提交成功