> получим портянку из 200-т строк кода, с определением поодерживает ли браузер, видео, а какой формат, и бла-бла-бла, ...вообщето когда делаешь какоето www-приложение -- то ты [при НЕУВЕРЕННОСТИ наличия/отсутствия определённой функции] (в случае когда оно предполагает открываться на РАЗНЫХ реализациях www-броузеров) просто ОБЯЗАН проверить поддерживается ЭТА функция
и проверять ты должен ИМЕННО "спорную" ФУНКЦИЮ , а НЕ какуюто ОБЩУЮ абстракцию (такую как "ааа... значит мы работает в Фурефоксе -- значит всё будет в порядке....")
(хотя -- это можно и не проверять (а просто использовать будтобы они точно поддерживаются) .. если предпологается что "будет используется ТОЛЬКО самый современный броузер" , или если "будет использоваться ТОЛЬКО <определённый> броузер с <такойто> версией" ... но в остальных случаях ПРОВЕРКА БЫТЬ ОБЯЗАНА и причём именно ДЕТАЛЬНОЙ)
...
> в итоге вместо if(window.supportHTML5)
что-то в моём Firefox-4.0-b8 -- переменная "window.supportHTML5" равна <undefined> ... не скажешь интересно же почему это?
а если некий броузер поддерживает HTML4.01 не на 100% а на 99.999999% -- то чему же по-вашему-домыслу должна быть равна переменная window.supportHTML401 ???
перестаньте думать что мир монохромно-чёрнобелый (думать что -- "HTML-version-X.Y" либо поддерживается <чемто> полностью, либо не поддерживается совсем) ..
спецификации нужны не для того чтобы разработчики им следовали на 100% .. а для того чтобы не было ЯВНЫХ разхождений у разработчиков в понимании того или иной сущности