2013-02-21 22 views

回答

0

你不能「改變」action函數本身。 action是用於將某些事件的事件偵聽器添加到您創建的按鈕節點的快捷方式。你可以做的是刪除該事件監聽器並添加另一個監聽器。

由於action只添加一個事件偵聽器,您可以通過刪除所有事件偵聽器來安全地刪除它。只需拿到getButton的按鈕結點,撥打detachAll並附加一個新的事件監聽器:

var panel = new Y.Panel({ /* panel config with some buttons */ }); 
// later on... 
var button = panel.getButton(1); 
button.detachAll(); 
button.on('click', newAction);