我正在做一個像JS的框架。我希望用戶能夠功能添加到特定的動作,就像在WordPress插件:如何使用窗口[functionName]引用非全局函數?
add_action("wp_head", "functionName");
我看了看其他的問題,而最欣賞的答案是
window['functionName']
但是怎麼辦當函數「functionName」爲而非全局,但位於$(document).ready({});例如?它會拋出一個錯誤Uncaught TypeError:無法調用未定義的方法'call'
還有一個選項,即將用戶函數作爲參數傳遞給add_action(如果我們假設我的函數也將被命名爲add_action ):
add_action("some_event", functionName);
// in the framework's JS file:
function add_action(event, fn) {
fn();
}
但是我有一種預感,這將是低效的,因爲地獄和錯誤的方式做到這一點。
當某個其他函數觸發某個動作時,添加一組要執行的函數稱爲「事件處理」。 – zzzzBov 2012-02-08 03:39:45
不知道爲什麼這是低票... – 2012-02-08 04:03:09
你是說你將有一組預定義的功能,用戶可以選擇,或用戶可以以某種方式定義自己的功能? – nnnnnn 2012-02-08 04:28:49