jquery回撥函式中this的指向簡單介紹

antzone發表於2017-04-12

本章節簡單介紹一下jquery回撥函式中this執行的問題。

在事件處理函式中,this執行事件觸發的那個元素,程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼
$("#click").click(function () {
  //this是指向id屬性值為click的元素
});

在回撥函式可能會各有不同,看如下程式碼:

[JavaScript] 純文字檢視 複製程式碼
$(function () {
  var _num = 1;
  $("#click").click(function () {
    var _ul = $("#ul");
    var _li = $("#ul li");
    var _len = _li.length;
    var _str = "<li style='display:none'>" + _num + "</li>";
    _li.eq(_len-1).fadeOut('slow',function () {
      $(this).remove();
    });
    ++_num;
    $(_str).prependTo(_ul).fadeIn('slow');
  });
});

fadeOut()中回撥函式的this的執行是執行動畫的元素。

在jQuery可能回撥函式的this執行有所不同,具體需要翻閱文件或者自行測試一下。

相關文章