![](/img/trans.png)
[英]Coding Style - Naming Conventions - Constants - What style does JQuery use?
[英]jquery custom events naming conventions
那么,他們是什么?
我的意思是,我知道有命名空間 - 但是如果我的事件名稱太明顯了,那就說submit
,然后只需添加命名空間submit.myns
就不會阻止在觸發標准submit
時觸發它。
好吧,我知道, submit
是一個非常糟糕的例子,但如果我想使用與我正在使用的一些插件相同的名稱? 當我有大型網站,有很多自定義事件和大量插件時,這可能是一個問題,特別是如果我想保持事件名稱簡單而有意義。
那你使用某種約定,比如前綴/后綴(比如myns:event
/ myns_event
)? 或許我太擔心了,我的擔憂是沒有根據的?
編輯:
命名空間很棒,如果你必須對有界事件進行分組以便輕松解除綁定。 但它的工作方式,無法確定處理程序click.my
僅由click.my
觸發。 為此,我們必須將其命名為不同,例如my_click
- 然后我們保留有意義的名稱,我們知道它是我們的事件(並且不太可能有人使用它),我們仍然可以從標准事件命名空間中受益。
一些代碼可以看到差異: http : //jsfiddle.net/h2kuN/1/
Namespacing解決了這個問題 - 但只有每個人都使用它 。
您可以綁定並觸發christmas.adam
作為季節性插件,我可以綁定並觸發christmas.bennett
,我們不會干涉。 但如果有人出現並觸發christmas
那么我們的插件都會被觸發。
發生這種情況是因為如果將處理程序綁定到event.namespace
,則觸發event
將觸發您的處理程序。 這在jQuery API文檔中並不清楚,但從jQuery 1.7.1開始就是如此。
因此(除了可以輕松地同時取消綁定多個處理程序之外),命名空間用於保護其他代碼,而不是您的代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.