(function(aLeftPane) { ... }) ("History")
。
完整的功能在这里:pastebin.com
我无法理解括号的秒组内容如何传递到第一组中的函数。
我想将硬编码的“历史”变成一个变量。我已经尝试将整个事情包装在一个更常规的函数中,但是我无法成功地将参数传递给它。
调用该函数的XUL目前如下所示:oncommand="madeUpWrapperName('history');"
答案 0 :(得分:0)
(function(aLeftPane) { ... }) ("History")
不是是一个异常结构化的函数,它是JS中封装代码的常见模式。它的作用是声明一个匿名函数,然后立即调用它。库经常使用它来创建lib入口点并干净地将私有代码与公共代码分开,而不会污染全局名称空间。
在您的情况下,您实际上想要打开函数:
function unwrapped(aLeftPane)
{
/**
* Select left panel in Library.
*
* @param aBrowser Browser object in selected tab.
...
}
然后,在你的xul或其他地方:
oncommand="unwrapped('History');"