Bonjour,

je suis confronté à un problème qui me laisse perdu dans un épais brouillard. Smiley confus

Je veux faire faire suivre à ma page Html un fichier javascript particulier si je suis sur Internet Explorer.
Fastoche, il suffit juste d'utiliser
<!--[if IE]>
<script type="text/javascript" src="..."></script>
<![endif]-->

me direz-vous.

Oui, mais ça marche pas. Smiley eek
Il doit y avoir un bin's dans mon code, mais je ne sais pas où. Smiley lol

Voici le code simple que j'utilise pour faire le test, et d'avance un très grand merci pour votre aide !!!

__________________________

<html>
<head>
<meta charset="UTF-8">
<title>Test</title>


<style type="text/css">

#one {
		width:100px;
		height:100px;
		background-color:#0F3;
		display:none;
	}
	#two {
		width:100px;
		height:100px;
		background-color:#F00;
		display:none;
	}

</style>

<script type="text/javascript" src="JS/jquery.min.js"></script>
<script type="text/javascript" src="testOne.js"></script>

<!--[if IE]>
<script type="text/javascript" src="testTwo.js"></script>
<![endif]-->


</head>

<body>

<div id="one"></div>
<div id="two"></div>

</body>
</html>


____________________________

Voici mes codes JS :
testOne.js
$(window).ready(function(){
	$('#one').fadeIn(400);
})


testTwo.js
$(window).ready(function(){
	$('#two').fadeIn(400);
})


____________________________

Donc sur tous les navigateurs dont je dispose sur mon Mac (Firefox, Safari, Chrome et Opera) c'est le carré vert qui apparaît en fadeIn, le rouge restant invisible.
Idem sur Chrome Windows.

Par contre sur IE 8.0 les 2 carré apparaissent en fadeIn.

Où est l'erreur ??????

Merci à vous. Smiley cligne
Matthieu
Modifié par MattSaf (13 Oct 2013 - 22:10)
Bonjour,
Ton test pour isoler ton problème me parait un peu compliqué.
Je penses que tu as une première question, mon fichier pour ie est-il pris en compte ?

Pour cela, mets juste un alert dans ce fichier pour être fixé.
Bonjour Benj,

en effet, il y avait moyen de voir plus simple...

J'ai tout retiré et placé

<!--[if IE]>
<script>
      alert("IE") ;
</script>
<![endif]-->


dans head.
Ça fonctionne bien avec IE8.

Ce qui semble donc ne pas fonctionner c'est l'appel d'un fichier JS externe ?

Alors en bidouillant, j'ai remplacé
<!--[if IE]>
<script type="text/javascript" src="..."></script>
<![endif]-->

par

<!--[if IE]><!-->
<script type="text/javascript" src="..."></script>
<!--<![endif]-->

Et ça marche !
Normal ????.......
Ah non, ça ne marche pas.
Ou plutôt, ça marche tout le temps, ce qui est évident, vu que l'appel du fichier .js n'est plus entre les balises du [if IE].

J'en reviens donc au même problème :
la formule
<!--[if IE]>
	<script type="text/javascript" src="..."></script>
<![endif]-->


ne fonctionne pas avec (au moins) IE 8.0

Smiley decu
Modifié par MattSaf (13 Oct 2013 - 22:28)
En fait avec la formule

<!--[if IE]>
<script src="..."></script>
<![endif]-->

<script src="..."></script>


IE 8 prend en compte les 2 fichiers javascript !

Smiley ohwell

Ce qui bien sûr ne m'arrange pas du tout...
A priori, la chose ci-dessous fonctionne :

<!--[if IE]>
<script type="text/javascript">alert("IE");</script>
<![endif]-->
<!--[if !IE]><!-->
<script type="text/javascript">alert("Non IE");</script>
<!--<![endif]-->