/ / Jak wykryć obsługę atrybutu „scoped” stylu - javascript, css

Jak wykryć obsługę stylu "scoped" atrybut - javascript, css

Czy istnieje zalecany test w celu ustalenia, czy przeglądarka użytkownika obsługuje atrybut „zakres” elementów „stylu”?

Odpowiedzi:

6 dla odpowiedzi № 1

Nie sądzę, że istnieje zalecany test, ale właśnie go napisałem i polecę go

var is_scoped = (function(s) {
s.setAttribute("scoped", "true");
return !!s.scoped;
})(document.createElement("style"));

do użycia jako

if ( is_scoped ) {
// scoped styles are supported
}

SKRZYPCE

style o zasięgu obecnie obsługiwane są tylko w najnowszym Firefoksie.

Napisane nieco bardziej szczegółowe, łatwiej zobaczyć, co się dzieje

var style = document.createElement("style");
style.setAttribute("scoped", "true");
var is_scoped = style.scoped === true;

Tworzymy tag stylu i ustawiamy zakres atrybut na prawdę.
W przeglądarkach, które obsługują zakres, który również ustawia podstawową właściwość zakresu, więc style.scope byłoby true w obsługiwanych przeglądarkach byłoby to niewspierające przeglądarki undefined.

Jest to zwykły sposób sprawdzania obsługi wielu funkcji i działa równie dobrze z scoped.


2 dla odpowiedzi nr 2

Możesz spróbować tego ..

var is_scoped = (function(s) {
return "scoped" in s;
})(document.createElement("style"));