嗨,當我開始做網站開發,我意識到JavaScript事件名稱都是在沒有分隔小寫,即「的mousedown」,「鼠標鬆開」,等。隨着工作時jQuery UI庫,我注意到他們也使用相同的約定;即「dropdeactivate」如下面的例子的JavaScript/DOM事件名稱約定
javascript $(".selector").on("dropdeactivate", function(event, ui) {})
雖然這非常適用於那些只有2名或3個字的名字,它是上面有多個字的名字是非常糟糕的。
儘管如此,我還是遵循該公約,當我必須開始創建自定義(合成)事件時,直到最近我決定開始使用某種形式的分隔符時更好。現在我使用類似「drop:deactivate」或「app:ready」。
上蘋果iOS最近增加了該事件的HTML 5的Airplay API,和我這個職位http://www.mobilexweb.com/blog/safari-ios7-html5-problems-apis-review的作者日期達成一致時,他說:
我覺得「webkitcurrentplaybacktargetiswirelesschanged」贏得了記錄: 有史以來最長的JavaScript事件名稱。
這個古怪的約定背後的原因是什麼?爲什麼不使用任何形式的分隔符或camelCase約定來以更可讀的方式命名事件?
我認爲有一個原因,很多聰明的人在這工作......但過了一段時間,我還在想爲什麼?
這些應該叫做「PascalCased」嗎? – m59