簡體   English   中英

訪問父函數屬性Javascript

[英]Access parent function properties Javascript

我有一個像這樣的JavaScript類

function Palette() {

  this.selectedItem = "";

  this.addBox = function() {
    // Different approach, create a fake box
    b = $("<div id='box-palette' class='box'>Box</div>");
    b.insertBefore('#cont');

    b.mousedown(function() {
        this.selectedItem = "box"; // Here I want to access Palette#selectedItem
        console.log(Palette);
    });
  }
}

如何在我想傳遞給jQuery的函數中訪問類的屬性?

任何幫助將不勝感激。 謝謝!

由於它使用jQuery標記,因此使用$ .proxy()將父上下文傳遞給回調方法

function Palette() {

    this.selectedItem = "";

    this.addBox = function () {
        // Different approach, create a fake box
        b = $("<div id='box-palette' class='box'>Box</div>");
        b.insertBefore('#cont');

        b.mousedown($.proxy(function () {
            this.selectedItem = "box"; // Here I want to access Palette#selectedItem
            console.log(Palette);
        }, this));
    }
}

注意:由於缺少IE <9支持,因此未使用bind()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM