allez , chuis vraiment sympa  et je vais en faire profiter à tout le monde de mon truc pourri
 et je vais en faire profiter à tout le monde de mon truc pourri   
  
mon but était de faire un truc qui prenne des décision au cas où tel ou tel navigateur bogue sur du flash ... ou sur les versions différentes etc....
bref, truc sympa...et là ça marche nickel, j'ai testé sur mozilla, netscape, opéra, ie, sur Mac et sur Windoze
 
bref....voilà les sources:
structure:
index.html
js/isNav.js
js/isVer.js
js/win_isVer.vbs
js/decisions.js
 
les fichiers en question :
 
fichier index.html
 
| Code : 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><script language="Javascript">//MODIFIER ICI LES VARIABLES
var version = 3;     //la version flash de l'animation
var compatible_avec = "win.ns|aze.aze|mac.ie|win.ie|aze.aze|win.op3";  //les différentes couples os/navigateur
var url_bad_version = "version.html";   //l'url à appeler dans le cas d'une mauvaise version de flash
var url_bad_nav = "navigateur.html";   //l'url à appeler dans le cas d'un navigateur non listé dans compatible_avec
var url_ok = "ok.html";   //l'url à appeler si tout se passe bien
////////////////////////////
var to_end = "faux";var url_finale = "";</script><script language="Javascript" src="js/isNav.js"></script><script language="Javascript" src="js/isVer.js"></script><script language="VBScript" src="js/win_isVer.vbs"></script><script language="Javascript" src="js/decisions.js"></script></HEAD><BODY>ici mettre rien</BODY></HTML>
 | 
 
ficheir js/isNav.js
| Code : 
 if (to_end == "faux" ){	function Is() {	  var agent = navigator.userAgent.toLowerCase();	  this.major = parseInt(navigator.appVersion);	  this.minor = parseFloat(navigator.appVersion);	  this.ns = ((agent.indexOf('mozilla')!=-1) && ((agent.indexOf('spoofer')==-1) && (agent.indexOf('compatible') == -1)));	  this.ns2 = (this.ns && (this.major == 3));	  this.ns3 = (this.ns && (this.major == 3));	  this.ns4b = (this.ns && (this.minor < 4.04));	  this.ns4 = (this.ns && (this.major >= 4));	  this.ie = (agent.indexOf("msie" ) != -1);	  this.ie3 = (this.ie && (this.major == 2));	  this.ie4 = (this.ie && (this.major >= 4));	  this.op3 = (agent.indexOf("opera" ) != -1);	  this.win = (agent.indexOf("win" )!=-1);	  this.mac = (agent.indexOf("mac" )!=-1);	  this.unix = (agent.indexOf("x11" )!=-1);	}	var is = new Is();	var cclient = compatible_avec.split("|" );	var result = false;	for (n=0; n<cclient.length;n++)  {  var v1 = cclient[n].split("." );  if ( eval("is."+v1[0]) && eval("is."+v1[1]) )  	result = true;  }	//alert("navigateur compatible : "+result);
	if (!result) {url_finale = url_bad_nav;to_end = "vrai";}}
 | 
 
fichier js/isVer.js
| Code : 
 if (to_end == "faux" ){	if (navigator.plugins && (navigator.plugins.length > 0) )  {  	var tmp;  	var app = "Shockwave Flash";  	for (i=0; i<navigator.plugins.length ; i++ )    {if (navigator.plugins[i].name == app) {tmp = navigator.plugins[i].description ;}}  	pt1 = tmp.indexOf(app) + app.length;pt2 = tmp.indexOf(" ",pt1+1);  	tmp = tmp.substring(pt1,pt2);  	if ( (parseInt(tmp) == tmp) || (parseFloat(tmp) == tmp) )    {tmp = parseInt(tmp);}  	else    {tmp = 0;}  	if (tmp < version)    {url_finale = url_bad_version;to_end = "vrai";}  	else    {url_finale = url_ok;to_end = "vrai";}  }}
 | 
 
fichier js/win_isVer.vbs
| Code : 
 'nécessite la variable version définie dans l'appellantif to_end = "faux" then	on error resume next	FlashInstalled = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash."&version)))	If (FlashInstalled) then  url_finale = url_ok  to_end = "vrai"	Else  url_finale = url_bad_version  to_end = "vrai"	End Ifend if
 | 
 
fichier js/decisions.js
| Code : 
 if (to_end == "vrai" ){	alert("url_finale = "+url_finale);}
 | 
 
 
 
 
bref, il reste à faire décisions.js mieux,
mais c cool, c super paramétrable et très simple à utiliser !!
voilà, profitez en bien !  
 
et au fait, n'hésitez pas à faire évoluer le truc et me dire si ya des bogues ou des trucs pas corrects! siouplé!!! j'aimerais en faire une version définitive!