首頁  >  問答  >  主體

html5 - 请教大家几个前端问题

  1. html有哪些兼容性?如何解决这些兼容性,解决方法的原理是什么?

  2. BOM与DOM的关系?

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

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

高洛峰高洛峰2766 天前424

全部回覆(5)我來回復

  • 天蓬老师

    天蓬老师2017-04-17 11:29:02

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

    回覆
    0
  • 黄舟

    黄舟2017-04-17 11:29:02

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

    回覆
    0
  • 高洛峰

    高洛峰2017-04-17 11:29:02

    4 可以用grunt和gulp

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 11:29:02

    我是來回答第二個問題的,回答之前先說說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中看得出瀏覽器的核心工作元件(針對瀏覽頁面而言)。這是模型的解釋。

    寫在最後:

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

    回覆
    0
  • 黄舟

    黄舟2017-04-17 11:29:02

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

    回覆
    0
  • 取消回覆