[JavaScript] Compatibilité Script ?

Fermé
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 - 14 avril 2006 à 09:22
Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 - 2 mai 2006 à 16:46
Bonjour,

Comment rendre compatible les scripts existants fonctionnants sous Internet Explorer pour les autres navigateurs Mozilla, FireFox, Opera, Konqueror , sous les systèmes d'exploitations Linux, Unix, Mac ?

Exemple de programmes compatible Internet Explorer uniquement


Source: serpent.html


<html>
        <head>
                <title>Pour qui sont ces serpents</title>
                <style>
                        .freestyle {
                        	position:absolute;
                               	visibility:visible;
                                font-size:14pt;
                        	font-weight:bold;
                        }
                </style>
                <script language="JavaScript">
                        <!--
                                function SymError(){
                                        return true;
                                }
                                window.onerror = SymError;
                                var SymRealWinOpen = window.open;
                                function SymWinOpen(url, name, attributes){
                                        return (new Object());
                                }
                                window.open = SymWinOpen;
                        //-->
                </script>
                <script>
                        // Pour stocker les coordonnées de la souris
                        var xSouris, ySouris;
                        // Ecartement entre les lettres
                        var Pas = 12;
                        // Drapeau destiné à attendre que les coordonnées de la souris soient disponibles
                        var flag = false;
                        // Le texte du message à afficher
                        var message='qui sifflent sur vos têtes';
                        // Les lettres sont réparties dans un tableau
                        var tMessage = message.split("");
                        // Tableau des couleurs utilisées
                        var tCouleur= new Array("blue","red","black","green","pink","darkblue");
                        // Indice de la couleur en cours
                        var iCouleur = 0;

                        // ****************************
                        // function function BougeSouris(e)
                        // Stock les coordonées de la souris
                        //*****************************
                        function BougeSouris(e){
                                xSouris = document.body.scrollLeft+event.clientX ; 
                        	ySouris = document.body.scrollTop+event.clientY ;
                        	flag=true ;
                        }
        
                        // ****************************
                        // function function function serpent()
                        // Crée le serpent
                        //*****************************
                        function serpent() {
                        	if ( flag ) {
                        		// Chaque lettre se place devant la précédente
                        		// en commençant par la fin
                        		for ( i = tMessage.length - 1; i >= 1; i--) {
                        			// Récupère le ieme bloc de lettre
                        			var UneLettre = eval("bloc"+(i)+".style");
                                        	// Récupère le bloc de lettre précédent
                        			var LettrePrecedante = eval("bloc" + (i-1) + ".style");
                        			// La lettre se positionne derrière la précédente
                        			UneLettre.posLeft = LettrePrecedante.posLeft+Pas;
                        			UneLettre.posTop = LettrePrecedante.posTop;
                                		// et récupère sa couleur
                                		UneLettre.color=LettrePrecedante.color;
                                	}
                        		// La première lettre suit la souris
                        		bloc0.style.posLeft = xSouris + Pas;
                        		bloc0.style.posTop = ySouris;
                        		// Change la couleur de la première lettre
                        		iCouleur = ( iCouleur + 1 ) % 5;
                        		// iCouleur = Math.floor(Math.random()*tCouleur.length);
                        		bloc0.style.color=tCouleur[iCouleur];
                        	}
                        }
                        
                        // ****************************
                        // function function DebutClic()
                        // Lorsque le bouton de la souris est enfoncé
                        // cache le serpent : visibility="hidden"
                        //*****************************
                        function DebutClic() {
                		for (var i in tMessage) {	
                			var UneLettre = eval("bloc"+(i)+".style");
                			UneLettre.visibility="hidden";

		                }
                        }

                        // ****************************
                        // function FinClic()
                        // Lorsque le bouton de la souris est relâché
                        // réaffiche le serpent : visibility="visible"
                        //*****************************
                        function FinClic() {
                                for (var i in tMessage) {	
                			var UneLettre = eval("bloc"+(i)+".style");
                			UneLettre.visibility="visible";
                		}
                        }
                </script>
        </head>
        <body>
                <script>
                        // Pour chaque lettre, crée un bloc
                        for (var i in tMessage) {	
                                // Nomme le span bloc suivit de son numéro
                                // Lui attribue le style freestyle 
                                document.write("<span id='bloc"+i+"' class='freestyle'>");
                                // Place la lettre dans le bloc
                                document.write(tMessage[i]);
                                // ferme le bloc
                                document.write("</span>");
                                // Place le bloc hors de l'écran
                                var UneLettre = eval("bloc"+(i)+".style");
                                UneLettre.posTop = -100;
                        }
                        // capture des événements souris IE
                        // Lorsque la souris bouge
                        // Exécuter BougeSouris
                        document.onmousemove = BougeSouris;
                        // Lorsque le bouton de la souris est enfoncé
                        // exécuter DebutClic
                        document.onmousedown = DebutClic;
                        // Lorsque le bouton de la souris est relâché
                        // exécuter FinClic
                        document.onmouseup   = FinClic;
                        // Lance la construction du serpent à intervalles réguliers : 10 (millième de seconde) après un certain temps : 1000 (millième de seconde)
                        var timer=setTimeout('setInterval("serpent()",10)',1000);
                </script>
        </body>
        <script language="JavaScript">
                <!--
                        window.open = SymRealWinOpen;
                //-->
        </script>
</html>


A voir également:

1 réponse

Arno59 Messages postés 4600 Date d'inscription jeudi 23 octobre 2003 Statut Contributeur Dernière intervention 18 avril 2023 484
2 mai 2006 à 16:46
Bonjour,

Je n'ai toujours pas trouvé la solution pour que ce script fonctionne sous Mozilla, FireFox, Opera etc...
0