2013-03-09 46 views
0

我找不到這個問題 - 我會給它一個。爲什麼菜單jquery UI小部件有一個奇怪的名字?

我正在瀏覽一些jQuery UI小部件,並且發現了一個我以前從未見過的函數名稱的用法。我很好奇爲什麼使用這個慣例。

我從來沒有見過用作函數名稱的絃樂選擇器。他們爲什麼使用這種方法?

"mousedown .ui-menu-item > a": function(event) { 
    event.preventDefault(); 
}, 
"click .ui-state-disabled > a": function(event) { 
    event.preventDefault(); 
}, 
"click .ui-menu-item:has(a)": function(event) { 
+0

什麼部件是這樣的字符串? – 2013-03-09 00:30:13

+0

菜單部件。我更新了OP – 2013-03-09 01:22:04

回答

1

他們可能一直在使用它作爲地圖和/或使用jQuery的.delegate(selector, eventType, handler(eventObject))

var funcMap = { 
    'foo': function(e) { 
     console.log('foo'); 
    }, 
    'bar': function(e) { 
     console.log('bar'); 
    } 
}; 

funcMap['bar'](); 
funcMap['foo'](); 
+0

真棒..讓我看看。我從來沒有見過這個慣例 - 讓我難住。謝謝一堆。 – 2013-03-09 00:39:02

0

這是事件處理程序連接到事件

你看到的是事件名稱+選擇的字符串,這可能是內部分裂和使用選擇莫名其妙