Abe Fettig ha recentemente pubblicato sul suo blog un piccolo snippet di codice Javascript per individuare/identificare IE7 rispetto alle versioni precedenti. Si basa sul fatto che il nuovo browser di Microsoft, a differenza dei suoi predecessori, supporta la proprietà CSS max-height
. Ecco il codice:
if (typeof document.body.style.maxHeight != "undefined") {
// IE 7, mozilla, safari, opera 9
} else {
// IE6, older browsers
}
àˆ utile, consigliato, opportuno questo approccio? Un po' di risposte, sollecitate del resto dall'autore, arrivano tra i commenti di questo post di Ajaxian.
Seguendo la stessa linea (object detection) uno dei commentatori suggerisce di verificare il supporto dell'oggetto XmlHttpRequest:
if (window.XMLHttpRequest) {
// IE 7, mozilla, safari, opera 9
} else {
// IE6, older browsers
}
In verità , molti degli interventi sconsigliano decisamente di percorrere questa via (sniffing via Javascript), prima di tutto perché è impossibile sapere se un certo browser, con una patch o un aggiornamento per esempio, aggiungerà il supporto all'oggetto usato per identificarlo. La soluzione? Quelle consigliata dalla stessa Microsoft, il commento condizionale:
<!–[if IE 7]>
<script>isIE7 = true;</script>
<![endif]–>