Supports.js is made for programmers. Whenever you need to know if a CSS property or value is supported and what it's DOM name is! Also Events, Canvas, Audio, Video and most HTML5 features can be detected.
Examples:
var ele = DOMobject.style;
var style = supports.style( 'boxShadow' );
if(style===false) {
ele.borderRight="2px solid gray";
ele.borderBottom="2px solid gray";
} else {
ele[style]="2px 2px 4px gray";
}
var value = supports.value( 'cursor', 'zoom-out' );
if(value===false) {
ele.cursor="pointer";
} else {
ele.cursor=value;
}
if(supports.window( 'Worker' )) {
...
} else {
...
}
if(supports.navig( 'onLine' )) {
...
} else {
...
}
if(supports.vml()) {
...
}
if(supports.svg()) {
...
}
if(supports.canvas()) {
if(supports.canvas( 'toDataURL' )) {
...
}
}
if(supports.event( 'click' )) {
...
} else {
...
}
if(supports.audio()) {
if(supports.audio( 'ogg', 'flac' )) {
...
}
}
if(supports.video()) {
if(supports.video( 'ogg', 'theora, vorbis' )) {
...
}
}
Functions #1 argument must be written in DOM syntax!