Přejít k navigační liště

Zdroják » Zprávičky » How to make Modernizr 1.5 work with IE9 Platform Preview

How to make Modernizr 1.5 work with IE9 Platform Preview

Zprávičky Různé

Zprávička je dostupná i v češtině.

The well-known HTML5 testing library Modernizr 1.5 doesn’t work correctly in the MSIE9 Platform Preview browser. The reason is a non-standard IE9PP behavior, which isn’t sanitized in the library code.

The Modernizr library tests some properties with a such code:

if (m_style[property] !== undefined) ...

m_style is a shortcut for testing element’s style:

m = doc.createElement( mod ),
m_style = m.style

There are five properties tested in a CSS3 transformation test: ‚transformPro­perty‘, ‚WebkitTransform‘, ‚MozTransform‘, ‚OTransform‘ a ‚msTransform‘. The problem occurs in the IE9PP browser, which correctly returns undefined for the four properties, excepting the last one. Accessing the msTransform property doesn’t return either undefined or an object, but throws a „Not Implemented“ exception. test_props() function in the Modernizr library ver. 1.5 doesn’t catch this exception (nobody expects an exception here), so the whole script fails.

We can hope that next version of the IE9 browser (maybe the public beta) will fix it. Paul Irish, the Modernizr contributor, also reported it as a bug.

We can fix the Modernizr 1.5 library by enclosing the test into a try{} block, and catching the exception. Here is a patched version:

function test_props( props, callback ) {
    for ( var i in props ) {
        try {
          if ( m_style[ props[i] ] !== undefined && ( !callback || callback( props[i], m ) ))
             {return true;}
        } catch (e) { ; }
    }
}

We’ve been noticed about the problem, which affect our HTML5 Support Detector, by Štěpán Bechynský.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře

Vite 8 Beta přináší nový bundler Rolldown a zásadní zrychlení buildů

Vite je moderní nástroj pro vývoj webových aplikací, který klade důraz na rychlost a jednoduchou konfiguraci. Umožňuje okamžitý start dev serveru a optimalizované produkční buildy, což urychluje vývoj i nasazení. Verze 8 Beta přináší zásadní změnu díky integraci bundleru Rolldown napsaného v Rustu, který sjednocuje vývojovou a produkční pipeline. Novinka výrazně zrychluje buildy a přináší moderní optimalizace. Součástí jsou také nové funkce pro TypeScript a připravovaný Full Bundle Mode pro rychlejší dev server.

Stack Overflow spouští AI Assist: nový nástroj pro moderní vývojáře

Stack Overflow představil AI Assist, nástroj, který propojuje generativní AI s rozsáhlou databází ověřených znalostí komunity. Platforma, která byla více než 18 let klíčovým zdrojem řešení pro vývojáře po celém světě, tím reaguje na změny ve způsobu práce s informacemi. Cílem AI Assist je zrychlit hledání odpovědí, zvýšit jejich spolehlivost a nabídnout kontext, který pomáhá lépe porozumět problému i řešení. Tento krok odráží trend, kdy se vývojáři čím dál více obracejí na nástroje, které dokážou kombinovat rychlost AI s ověřenými znalostmi komunity. AI Assist se tak stává mostem mezi tradičním Q&A formátem a moderními interaktivními asistenty.

Austrálie vs. sociální sítě: ochrana dětí nebo absurdní regulace?

Různé
Komentáře: 1
Austrálie chystá razantní krok – od prosince 2025 budou děti mladší 16 let muset opustit sociální sítě. Ministryně komunikací Anika Wells ujistila, že vláda se nenechá zastrašit technologickými giganty. Zákon má chránit mladé uživatele před negativními dopady online světa, ale kritici varují, že může vést spíš k obcházení pravidel než k reálné ochraně.