關(guān)于瀏覽器事件處理程序
我覺(jué)得事件處理程序應(yīng)該只分為3類(lèi):
? 1.HTML事件處理程序
? 2.DOM0級(jí)事件處理程序
? 3.DOM2級(jí)處理程序(包含IE事件處理程序)
不應(yīng)該把IE事件處理程序放在上面的分類(lèi)中,因?yàn)橐曨l講的IE事件處理程序也應(yīng)該是DOM2級(jí)處理程序,只因?yàn)镮E瀏覽器的比較特殊,IE的開(kāi)發(fā)人員把DOM2級(jí)的添加事件命名成了attachEvent和detachEvent,而其他瀏覽器的開(kāi)發(fā)人員卻命名成addEventListener 和removeEventListner 。
所以在做瀏覽器兼容的時(shí)候,使用到能力檢測(cè)(JS最佳實(shí)踐),兼容到各個(gè)版本瀏覽器的添加事件和移除事件。
比如將來(lái)又出現(xiàn)一個(gè)牛逼公司開(kāi)發(fā)一款新瀏覽器,他們?cè)谧鎏砑邮录鸵瞥录r(shí),把它命名成了appendEventListener和DeleteEventListner,那么在在能力檢測(cè)時(shí)又需要把這個(gè)也加進(jìn)來(lái)。
--只因超過(guò)300字不能放到評(píng)論里,所以放到提問(wèn)里來(lái)了
2016-01-17
是的,IE6/7/8神馬的確實(shí)太煩了,分類(lèi)只有3類(lèi),如果對(duì)于項(xiàng)目要求兼容IE6再去找找相關(guān)的東西,一般情況下不需要考慮太多支持IE6的問(wèn)題,連ie6都敢問(wèn)你要不要將它設(shè)為默認(rèn)瀏覽器,你還有有什么不敢表白的?一個(gè)笑話(huà),滿(mǎn)意給3分哈~