2011-12-02 16 views
5

Ho uno script di fantasia che è bello, ma non essenziale e sorpresa a sorpresa, non gioca bene con IE. Come faccio a "commentarlo" per IE?Script di blocco in IE

So che posso utilizzare il seguente per comprendono dichiarazioni a IE, ma come faccio a escludono loro?

<!--[if IE 6]> 
Special instructions for IE 6 here 
<![endif]--> 
+0

È possibile utilizzare il lato server per rilevare se un browser IE sta effettuando la richiesta e quindi non inviare tale script. – david

risposta

4

Basta usare! see here for more info

<!--[if !IE]> 

o

<!--[if !(IE 6)]> 
+0

Wow ho pensato che sarebbe stato semplice, ma non così facile! Saluti. – jack

3

Per tutte le versioni di IE:

<!--[if !IE]> 
conditional stuff 
<![endif]--> 
0

Purtroppo, non c'è tale meccanismo da escludere uno script (vale a dire a meno che lo script è rivolto a solo IE, nel qual caso vai a vedere la risposta di ramblex/karim79).

Ma ... è possibile modificare lo script per verificare la presenza di una variabile globale (sì, lo so sospiro) che, una volta impostata, interrompe lo script. Qualcosa lungo la linea:

// wrap your nice script in an anonymous function 
(function(document, undefined) { 
    if (window.ie6 === true) return; 

    ..... 
})(document); 

Ora vai avanti e includono la variabile globale con un tag condizionale, in questo modo:

<!--[if lte IE 6]> 
    window.ie6 = true; 
<![endif]--> 

Et voilà.