我是jquery的新手,我無法理解如何在'click'事件中使用'blur'事件。jquery,點擊事件內部的模糊事件
我的項目有
- 工具箱:其中有一個按鈕添加元素,以帆布
- 畫布:添加的所有元素出現在這裏
- 一個編輯器窗口:我在哪裏可以看到/編輯元素的屬性
這裏是我的項目的草圖:Fiddle
我添加到畫布的每個元素都有兩個表示法:一個對象和一個可見的div。關鍵是:當我向畫布添加元素時,我可以點擊它們,並且我可以在編輯器窗口中編輯它們的屬性。元素有一個文本屬性和它的名字。
但是,如果我有例如:畫布上的2個元素,並嘗試更改其中一個文本屬性(在編輯器窗口中),它會更改所有元素的text屬性。我的問題功能如下:
$(function(){
canvas.delegate('.myElement','click', function(){
var obj = this;
myTextArea.val(this.text);
myTextArea.on('blur',function(){
obj.text = myTextArea.val();
});
});
});
有人能告訴我我在哪裏嗎?感謝您的幫助球員
當您在畫布上添加元素時,請嘗試添加一個eventlistener。 – Sushil
你應該(幾乎)從來沒有在其他事件處理程序中使用事件處理程序,它們只是繼續複合。每次有人點擊該元素時,都會添加一個新的「blur」事件處理程序,以便在每個模糊事件上運行代碼兩次,然後執行三次,然後四次。 – adeneo