此前一名微軟Edge瀏覽器工程師表示谷歌在Youtube添加了代碼以故意破壞Edge瀏覽器的兼容性,IT之家今天早些時候報道,對此谷歌表示否認,稱YouTube空白div只是為了修復一些bug。谷歌有沒有撒謊呢?有IT之家網友投稿,一位視頻工程師(曾編寫過一個完整的視頻播放器)似乎站在谷歌這邊。
這名開發者名為Jeremy Noring,在看過最近有關Youtube代碼破壞Edge視頻渲染性能的新聞后,發文聲稱,他也寫過這樣的代碼,目的只為解決IE瀏覽器上無法用鍵盤控制視頻的bug。值得一提的是,該開發者的文章(原文)發布早于谷歌的聲明。
該開發者在文章中稱,在2015年8月的時候,為了修復IE瀏覽器上的一個按鍵bug:當視頻本身被用戶選中后,IE會“竊取”所有的按鍵事件(totally steal *everything*),并做一些“雞賊”的處理(do hideous things),影響到代碼其他部分的邏輯,導致無法用鍵盤來控制視頻播放。一個最簡便的解決方法就是在上面覆蓋一個完全透明的div,讓用戶絕對無法選中視頻標簽本身,這樣既不影響鼠標操作,鍵盤操作也正常了。(譯注:視頻本身是video標簽播放,上面覆蓋透明div,然后播放按鈕通過z-index設置覆蓋在透明div之上,這樣可以用鼠標點擊按鈕操作,同時觸發正確的鍵盤按鍵事件)
他猜測,谷歌的工程師為了讓Youtube視頻可以在各種瀏覽器正常用鍵盤操作,發現了IE的bug,然后剛好用了這個最簡單的解決方法。該開發者還稱,將一個HTML元素放在視頻元素之上沒有任何問題,在視頻元素的頂部放置一個空白div,或者幾乎任何其他元素都是100%合法的。
他同時批評這名Edge瀏覽器工程師,稱Edge的視頻渲染引擎根本稱不上“相當先進(state-of-the-art)”,因為它連上面覆蓋一個透明的div都搞不定。而且,為什么一個瀏覽器市場份額占比這么大的公司,要去費盡心思搞死一個市場占有率零頭的瀏覽器?
文章最后作者提到,“現在的瀏覽器一家獨大,但好像程序員們都集體忘記了一家獨大是有原因的。”并言辭激烈地表示,“如果你們不想這樣,麻煩不要寫個那么傻*的瀏覽器出來(Don't want a monoculture? Start making a browser that doesn't suck shit.)”。
微軟沒有對其工程師的說法進行評論,微軟只是稱,“谷歌一直是一個非常好的合作伙伴。”微軟已經宣布Edge瀏覽器放棄EdgeHTML瀏覽器引擎,轉投使用谷歌的開源項目Chromium引擎。
關鍵詞: