La etiqueta HTML <blink>
, en los navegadores que lo admiten (es decir, Mozilla Firefox y Opera), hace que su contenido parpadee, pareciendo el efecto de una luz estroboscópica lenta.¿Cómo puedo detectar si un navegador admite la etiqueta de parpadeo?
Estoy escribiendo un conjunto de polyfills para HTML no estándar, incluida la etiqueta blink
. La implementación de parpadear comportamiento es bastante simple
(function blink(n) {
var blinks = document.getElementsByTagName("blink"),
visibility = n % 2 === 0 ? "visible" : "hidden";
for (var i = 0; i < blinks.length; i++) {
blinks[i].style.visibility = visibility;
}
setTimeout(function() {
blink(n + 1);
}, 500);
})(0);
(Puede see this in action)
Pero esto no detecta si el navegador ya es compatible con la etiqueta blink
, y en los navegadores que son compatibles con ella, habrá una efecto de doble parpadeo. Necesito alguna detección de características que determine si el navegador admite el parpadeo, y si no lo hace, volverá a caer en mi polyfill de Javascript.
No quiero hacer la detección del navegador, porque esa solución no es escalable, y como las personas pueden desactivar el comportamiento blink
en sus preferencias de Firefox, esa solución no es efectiva.
¿Hay alguna manera de detectar el soporte para el elemento blink
?
Buena pregunta, sin embargo, no creo que alguien haya utilizado ese elemento. [El propio wiki de W3] (http://www.w3.org/wiki/HTML/Elements/blink) dice 'No, realmente, no lo use. Es simplemente malvado. ¿Puedo preguntar para qué quieres usarlo? –
@PeterOlson entiendo totalmente ... eliminar mi comentario después de volver a leer su pregunta :-) – ManseUK
Usted podría simplemente anular el comportamiento de todos modos, y reemplazar el elemento con span, manteniendo el mismo contenido. –