2014-10-16 19 views
0

當包括在網頁中的JavaScript,爲什麼它通常 算差 形式使用各種在線活動屬性JavaScript事件

(such as onclick, onsubmit,etc) in HTML tags? (e.g. <div onclick="dostuff()">Click Me</div>)

+0

因爲一般你想分開一個頁面:Function(JS),Structure(HTML)和Style(CSS)。這樣一切都在一個地方。 – 2014-10-16 23:01:46

+0

它使JavaScript代碼混亂了HTML。 HTML是用於佈局而不是事件。如果您將事件處理信息放在一個地方,維護起來也會更容易。 – scrappedcola 2014-10-16 23:02:35

+0

除了保持內容,樣式和功能之外,它還將可維護性分開。如果這是一次性的函數調用,那麼它不會造成任何問題。如果這是跨多個頁面的多個元素需要的,並且您決定更改函數名稱,那麼您需要進行大量編輯。 – jeff 2014-10-16 23:03:56

回答

0

這一切都取決於你想要的arquitecture在您的應用程序和您正在使用的JavaScript框架的哲學中實現。例如,當您在頁面中使用大量jQuery時,您可能更喜歡使用編程方式將事件處理程序註冊到您的事件中,從而讓您的html清除任何行爲。

在其他情況下,您可能希望使用像backbone,emberjs或angularjs這樣的框架,這些框架使用html模板來自動化並輕鬆進行DOM操作。這種方法更喜歡使用聲明方式將數據和事件處理程序綁定到DOM元素,以避免在JavaScript代碼中放置太多行爲。

+0

感謝您提供此信息 – nahaelem 2014-10-17 12:09:28