2015-03-25 108 views
2

jQuery事件名稱空間是否可以包含破折號(連字符)?我有很長的命名空間,我想用破折號分開它們,可能嗎?我沒有找到關於http://api.jquery.com/unbind/的任何文檔。你知道它被記錄在哪裏嗎?jQuery事件名稱空間是否可以包含破折號?

的代碼是這樣的:

var close_menu_event_element = $('{selector}'); 
var event = 'click.our-top-menu'; // Can be also 'click.our-compose-menu' 
if (close_menu_event_element.length > 0) { 
    close_menu_event_element.unbind(event); 
    if (typeof(func) === "function") { 
     close_menu_event_element.bind(event, func); 
    } 
} 

更新:綁定和取消綁定工作在Chrome 41.0.2272.101 m,對於短線的命名空間,但我想知道,如果它的工作原理與jQuery的任何瀏覽器?我們正在使用jQuery 2.1.1。

+0

請分享一些相關的代碼並解釋它。 – 2015-03-25 10:06:57

+3

爲什麼不嘗試? – 2015-03-25 10:07:14

+0

我同意@MillieSmith - 吮吸它,看看是最好的學習方式。這就是說,是的,他們可以。 – 2015-03-25 10:08:36

回答

2

我想知道,如果它在任何瀏覽器的工作原理與jQuery

是的,它會在所有主要瀏覽器的工作沒有問題。所有用於解析名稱空間的jQuery都是通過.字符分割選擇器字符串。事情是這樣的:

namespaces = (tmp[2] || "").split(".").sort(); 

沒有看中這裏,拆分方法將工作無處不在,你可以使用-@如果您在命名空間的子想。

這裏是最好的文檔:source code

+0

謝謝!順便說一句,你知道他們爲什麼使用「myEvents」作爲http://api.jquery.com/unbind/中的命名空間嗎? jQuery有可能在將來不支持破折號的命名空間嗎? – Uri 2015-03-25 15:32:00

相關問題