Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

/*@cc_on ... @*/ adapté pour IE7

9 réponses
Avatar
Olivier Miakinen
Bonjour,

Je suis en train d'améliorer ma page de comparaison de jeux de
caractères 8 bits et, comme je crois que IE7 gère correctement
le :hover sur autre chose que les ancres, je voudrais limiter
ma bidouille JavaScript à IE6 et antérieurs. Seulement je ne sais
pas comment modifier mon code « /*@cc_on ... code pour IE ... @*/ »
pour qu'il ne s'exécute pas sur IE7.

J'ai fait une recherche via Google, mais je trouve des informations
contredites par d'autres. Quelqu'un ici aurait une idée ?

Cordialement,
--
Olivier Miakinen

9 réponses

Avatar
Laurent vilday
Je suis en train d'améliorer ma page de comparaison de jeux de
caractères 8 bits et, comme je crois que IE7 gère correctement
le :hover sur autre chose que les ancres, je voudrais limiter
ma bidouille JavaScript à IE6 et antérieurs. Seulement je ne sais
pas comment modifier mon code « /*@cc_on ... code pour IE ... @*/ »
pour qu'il ne s'exécute pas sur IE7.


var IS = {"IE":false, "IE6":false, "IE7":false};

/*@cc_on
IS.IE = true;
if ( @_jscript_version == 5.6 ) IS.IE6 = true;
if ( @_jscript_version == 5.7 ) IS.IE7 = true;
@*/

--
laurent

Avatar
Pierre Goiffon
Laurent vilday wrote:
Je suis en train d'améliorer ma page de comparaison de jeux de
caractères 8 bits et, comme je crois que IE7 gère correctement
le :hover sur autre chose que les ancres, je voudrais limiter
ma bidouille JavaScript à IE6 et antérieurs. Seulement je ne sais
pas comment modifier mon code « /*@cc_on ... code pour IE ... @*/ »
pour qu'il ne s'exécute pas sur IE7.


var IS = {"IE":false, "IE6":false, "IE7":false};

/*@cc_on
IS.IE = true;
if ( @_jscript_version == 5.6 ) IS.IE6 = true;
if ( @_jscript_version == 5.7 ) IS.IE7 = true;
@*/


Waa, intéressant, je garde précieusement : je viens de m'apercevoir que
j'avais une référence sur le MSDN pour les commentaires conditionnels en
HTML
(http://msdn.microsoft.com/workshop/author/dhtml/overview/ccomment_ovw.asp),
mais rien pour le JS ! Si quelqu'un a une URL de référence à proposer...


Avatar
Pascal PONCET
Seulement je ne sais
pas comment modifier mon code « /*@cc_on ... code pour IE ... @*/ »
pour qu'il ne s'exécute pas sur IE7.


Je ne sais pas non plus comment faire avec la compilation
conditionnelle, mais je me demande s'il ne serait pas plus simple
d'utiliser, dans ton cas, les commentaires conditionnels dans le "head"
du document html, genre "<!--[if lt IE 7]>...<![endif]-->" avec, à
l'intérieur, un appel au script externe ne comportant que la "bidouille"
concernée.
Bonne chance, Pascal.

Avatar
Olivier Miakinen

Je suis en train d'améliorer ma page de comparaison de jeux de
caractères 8 bits et, comme je crois que IE7 gère correctement
le :hover sur autre chose que les ancres, je voudrais limiter
ma bidouille JavaScript à IE6 et antérieurs. Seulement je ne sais
pas comment modifier mon code « /*@cc_on ... code pour IE ... @*/ »
pour qu'il ne s'exécute pas sur IE7.


var IS = {"IE":false, "IE6":false, "IE7":false};

/*@cc_on
IS.IE = true;
if ( @_jscript_version == 5.6 ) IS.IE6 = true;
if ( @_jscript_version == 5.7 ) IS.IE7 = true;
@*/


C'est parfait.

Donc, dans mon cas :
/*@cc_on if (@_jscript_version <= 5.6 ) { code }; @*/

Merci beaucoup ! Et je note le code plus général.


Avatar
Olivier Miakinen

Je ne sais pas non plus comment faire avec la compilation
conditionnelle, mais je me demande s'il ne serait pas plus simple
d'utiliser, dans ton cas, les commentaires conditionnels dans le "head"
du document html, genre "<!--[if lt IE 7]>...<![endif]-->" avec, à
l'intérieur, un appel au script externe ne comportant que la "bidouille"
concernée.


Non, ce n'est pas adapté en l'occurrence car je suis déjà dans une
partie JavaScript (optionnelle, mais utile pour tous les navigateurs
quand elle fonctionne) et il y a juste une petite partie de ce code
qui sert à émuler le :hover pour IE6.

La réponse de Laurent Vilday, en revanche, me convient parfaitement.

Avatar
Laurent vilday
j'avais une référence sur le MSDN pour les commentaires conditionnels en
HTML
(http://msdn.microsoft.com/workshop/author/dhtml/overview/ccomment_ovw.asp),
mais rien pour le JS ! Si quelqu'un a une URL de référence à proposer...


Index des rubriques
http://msdn2.microsoft.com/fr-fr/library/ahx1z4fs(VS.80).aspx

@cc_on, @if et @set
http://msdn2.microsoft.com/fr-fr/library/7kx09ct1(VS.80).aspx

variables comme @_win32, @_mac, @_jscript_build, etc
http://msdn2.microsoft.com/fr-fr/library/7142yyxw(VS.80).aspx

--
laurent

Avatar
Olivier Miakinen

Index des rubriques
http://msdn2.microsoft.com/fr-fr/library/ahx1z4fs(VS.80).aspx

@cc_on, @if et @set
http://msdn2.microsoft.com/fr-fr/library/7kx09ct1(VS.80).aspx

variables comme @_win32, @_mac, @_jscript_build, etc
http://msdn2.microsoft.com/fr-fr/library/7142yyxw(VS.80).aspx


À cause de la parenthèse fermante, tes liens ne sont pas directement
cliquables dans mon nouvelleur. Encadrer l'URL de chevrons permet d'y
remédier :

Index des rubriques
<http://msdn2.microsoft.com/fr-fr/library/ahx1z4fs(VS.80).aspx>

@cc_on, @if et @set
<http://msdn2.microsoft.com/fr-fr/library/7kx09ct1(VS.80).aspx>

variables comme @_win32, @_mac, @_jscript_build, etc
<http://msdn2.microsoft.com/fr-fr/library/7142yyxw(VS.80).aspx>

J'aurais pu aussi remplacer les parenthèses par des %29 mais ç'aurait
été moins beau.

Avatar
Laurent vilday
À cause de la parenthèse fermante, tes liens ne sont pas directement
cliquables dans mon nouvelleur. Encadrer l'URL de chevrons permet d'y
remédier :


oops, j'y avais pas pensé, désolé. Quelle idée bizarre ils ont eu aussi
de faire des urls pareils sur le msdn :/

--
laurent

Avatar
Pierre Goiffon
Olivier Miakinen wrote:
À cause de la parenthèse fermante, tes liens ne sont pas directement
cliquables dans mon nouvelleur. Encadrer l'URL de chevrons permet d'y
remédier :

Index des rubriques
<http://msdn2.microsoft.com/fr-fr/library/ahx1z4fs(VS.80).aspx>

@cc_on, @if et @set
<http://msdn2.microsoft.com/fr-fr/library/7kx09ct1(VS.80).aspx>

variables comme @_win32, @_mac, @_jscript_build, etc
<http://msdn2.microsoft.com/fr-fr/library/7142yyxw(VS.80).aspx>


Merci Laurent et Olivier ! Je garde précieusement ces URL !