html5 - 请教大家几个前端问题
高洛峰
高洛峰 2017-04-17 11:27:02
0
5
421
  1. html有哪些兼容性?如何解决这些兼容性,解决方法的原理是什么?

  2. BOM与DOM的关系?

  3. 让png在ie6下透明显示的js(DD_belatedPNG)工作原理是什么?

  4. 项目中如何优化或者压缩代码?如何提高性能?优化后结果好坏是通过什么判断的?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆(5)
Peter_Zhu

各種瀏覽器相容都不同,建議使用JQuery框架開發,相容性強;BOM即瀏覽器物件模型,沒有一套標準,Ajax的XMLHttpRequest即為瀏覽器對象,用的不多,而DOM是文檔物件模型,在DOM解析世界中,有一句話說得好,萬物皆節點。下面的問題請自行百度

黄舟

第一個問題
1.html沒有相容性問題,是瀏覽器渲染方式和核心的問題。
你所說的兼容無非是dom或css的問題。
2.BOM是瀏覽器物件模型,
DOM是文檔物件模型
3.不清楚原理,只知道這東西一直在算,很耗性能
4.優化是不斷在做的,是你自己思考的,例如你的那些節點事件是不是可以用代理來做,一些圖片是不是可以合併成一張圖? ,js程式碼是不是可以合併成一個js檔。

小葫芦

4 可以用grunt和gulp

Ty80

我是來回答第二個問題的,回答之前先說說javascript吧! (可能扯遠了哈)
javascript是一門程式語言,一般來說一門程式語言必須有的是基本資料類型,高階資料類型,操作符,關鍵字,一些內建函數,以及操作資料的函數。

javascript的運作環境是v8引擎。當v8引擎作為瀏覽器的一部分的時候,瀏覽器可以給它一些瀏覽器的API(廣告商常幹的事),例如修改瀏覽器網址列內的值,觸發瀏覽器的歷史記錄的後退/前進/刷新,查看瀏覽器的版本資訊等。 javascript又運行在v8引擎上,v8就可以讓javascript來呼叫這些API。於是瀏覽器上的javascript有location,history,navigator等這些原本該屬於瀏覽器的全域內建對象,這部分不是javascript這門程式語言必須的,卻很有用,這部分在javascript裡就是BOM(瀏覽器對象模型)。

瀏覽器解析一個html文檔的時候,它會把html解析成一個樹狀結構的物件(文檔樹document tree)。這個過程,瀏覽器擁有對這個物件的任何操作的'權限',然後瀏覽器將其中的一些'權限'通過v8引擎,讓javascript也能擁有,由於在網頁裡,這個用處特別大,使用比較頻繁,瀏覽器於是將這個document物件近乎完全讓javascript能使用。這個document物件在javascript裡就是DOM(文檔物件模型)。

以上至少說清楚了什麼是瀏覽器對象,和文檔對象,下面來說說模型。

模型是所研究的系統、過程、事物或概念的一種表達形式,對程式物件來說就是模型一定能體現它的核心結構,能描述它的核心的東西。再看DOM,它是document tree的根,提供的介面能讓你看得出這個物件是能描述成一顆樹的結構的,同理你能從BOM中看得出瀏覽器的核心工作元件(針對瀏覽頁面而言)。這是模型的解釋。

寫在最後:

以上純屬個人閒扯,就當是閒來沒事看看,不做正誤判斷。

黄舟

1.html的兼容性?其實不能這麼說,html沒有說針對哪一個瀏覽器的問題,但是有一些要注意規則,如在html5之前非區塊級元素裡面不能嵌套區塊級元素。其餘的樓主可以多去網路上了解寫法和規範。
2.BOM和DOM,不解釋,網路解釋太多,做技術,要學會自己去找答案,而不是問問題來坐等!
3.png圖片在ie6下可以使用濾鏡來實現,題主可以去我的網站看看,總結過這些東西。
4.效能優化,不多說,也去我的網站看吧,自己實踐然後寫過文章。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!