Voglio un pezzo di Javascript da eseguire se il browser non è IE o è IE 9+. Se il browser è IE8 o una versione precedente, dovrebbe essere eseguito un altro pezzo di Javascript.Come far funzionare il tuo javascript in modo condizionale, a seconda del browser?
Ho cercato di usare Conditional Comments:
<!--[if (!IE)|(gte IE 9)]>
<script type="text/javascript"> /* code 1 */ </script>
<![endif]-->
<!--[if (lt IE 9)]>
<script type="text/javascript"> /* code 2 */ </script>
<![endif]-->
Ma IE6 e IE7 ancora erano in esecuzione codice 1. E Firefox stava eseguendo il codice codice 2 ...
No jQuery, per favore.
Modifica: In realtà, la mia espressione condizionale era errata. Ma è andato ancora con il rilevamento delle funzioni proposto nella risposta scelta.
In genere è molto, molto meglio fare il rilevamento delle funzioni rispetto al rilevamento del browser. Quindi, se si descrive quale funzione si desidera utilizzare in IE9 e altri browser, ma non in IE8 o in basso, è possibile utilizzare un rilevamento di funzionalità in fase di esecuzione che in genere è più accurato del rilevamento del browser. – jfriend00
Voglio usare document.getElementByClass(), che è disponibile solo in IE8 + –