JS 實踐中的分層方法: 應用層、框架組件層、框架core、瀏覽器底層
JS 分爲: DOM、BOM、Style樣式、Canvas 2D、WebGL、SVG
瀏覽器底層的問題:
1、 JS核心語法層面薄弱;
2、 JS原生API不好用;
3、 瀏覽器兼容問題
框架:Prototype、YUI、Dojo、JQuery
框架組件:提供一些簡單的控件 分爲定製組件和框架通用組件
例如: input、text、checkbox、radio、select
未提供的控件:日曆選擇器、富文本編輯器
組件: 框架組建、定製組件、獨立組件
彈窗組建開發:
原生彈窗
原生彈窗問題:1、阻塞進程;2、不同瀏覽器樣式不同;3、不可定製樣式;
簡單回調的問題
1) 只能綁定一個回調
2) 回調的綁定時間和組建實例化時間耦合在一起
如果相對獨立的多個模塊需要綁定組件的同一事件,怎麼辦?
解決辦法: 原生事件
1) DOM事件:click、mousedown、focus、load ….
2) BOM事件:resize、storage、beforeunload ....
自定義事件本質:觀察者模式
優點:跳出原生事件的限制,提高封裝的抽象層級
原生function的問題:
1) 所有類繼承自Object
2) Object提供的幫助太少