最近在做些web前台js時,需要做使用者滑鼠事件和按鍵狀態進行判斷,因此重新做了一次幾大瀏覽器處理滑鼠事件的差異測試,我把測試結果寫在這裡,供今後遇到類似問題的朋友們參考,少做重複工作。
瀏覽器:ie8、firefox、opera、chrome
按鍵值定義差異:
ie8:0=無按鍵,1=左鍵,2=右鍵,4=中建,各鍵同時按下則累加,如左右鍵同時按下=1+2=3;
firefox、opera、chrome:這三瀏覽器結果相同,0=無按鍵或左鍵,1=中鍵,2=右鍵。
事件中按鍵資訊傳遞的差異:
ie8:滑鼠的任何事件均傳遞滑鼠按鍵資訊
firefox、opera、chrome:只在按下、放開、單擊、雙擊時傳遞滑鼠按鍵資訊,滑鼠移動、移出事件不傳遞按鍵資訊
ie8處理滑鼠按鍵資訊的方式是比較合理,但效能較差,尤其是處理onmousemove事件,其他3個瀏覽器的方式但效能很好,但比較麻煩,想在滑鼠移動時獲取滑鼠按鍵狀態需在按下鍵時預存按鍵資訊。
列舉IE與其他瀏覽器不一樣的特性?
1 ie支援currentstyle,firefox使用getcomputstyle 2 ie使用innertext,firefox使用textcontent 3 濾鏡方面 ie filter alpha opacity num firefox moz opacity num 4 事件方面 ie a...
動態建立iframe IE與其他瀏覽器的不同
很多情況下,我們都要動態建立元素,比如動態建立iframe,iframe很特殊,它即可以看作是頁面元素,也可以看作是窗體物件。所以,所對應的取法也不同。比如當作是頁面元素的時候,這樣取 document.getelementbyid iframe id 當作是窗體物件的時候取法就多了,主要有三種 1...
動態建立iframe IE與其他瀏覽器的不同
很多情況下,我們都要動態建立元素,比如動態建立iframe,iframe很特殊,它即可以看作是頁面元素,也可以看作是窗體物件。所以,所對應的取法也不同。比如當作是頁面元素的時候,這樣取 document.getelementbyid iframe id 當作是窗體物件的時候取法就多了,主要有三種 1...