IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Rendre un simple script compatible Firefox


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair� Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par d�faut Rendre un simple script compatible Firefox
    Bonjour � tous,

    Je reprend le d�veloppement d'un site apr�s quelques ann�es d'abstinence et b�! rien ne va plus, du � l'apparition d'une flop�e d'interface Internet.
    IE, Firefox, Netscape,... et j'en passe.
    Je travaille sur un script tout simple d'affichage un peu fun, qui fonctionne parfaitement sur IE mais refuse obstin�ment de tourner sous Firefox.
    Et malheureusement il faudrais qu'il le fasse...
    Si quelqu'un pouvait me filer un coup de pouce ce serait sympa, d'avance merci

    voici le script:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    <%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     
    <head>
     
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type=text/css>
        .telestyle {
    	position:absolute;
    	font-size:25pt;
    	font-family:Georgia, "Times New Roman", Times, serif;
    	font-weight:normal;
    	color:#FF6633;
    	top:96px;
    	left:110px;
    	height:60px;
    	width:600px; 
    	filter:alpha(opacity=100);
    	opacity:1.0;
    	-moz-opacity: 1.0;
    	font-variant: small-caps;
    	background-position: center;
    	line-height: 50px;
    	visibility: visible;
    	background-color: #FEF9F5;
        }
     
        </style>
    </head>
     
        <script language="javascript1.5" type="text/javascript">
    <!--
     
        var message = "Message d'Accueil"
        var character = 0;
        var to_print = "";
        var ypos = 96;
        var next = 0 ;
        var fade = 100 ;
    	var fade2 = 1.0;
        var next_message = new Array() ;
        next_message[0] = "Et voici un Deuxième"
        next_message[1] = "Et pourquoi pas un troisième"
        next_message[2] = "et voici le dernier!."
    	next_message[3] = "On revient à l'accueil"
        function doText(text) {
        if (document.all){
        if (character <= text.length - 1) {
        to_print += text.charAt(character);
        teletext.innerHTML = to_print;
        character++;
        }
        else
        scrollIt();
        }
        setTimeout("doText(message)", 20);
        }
        function scrollIt() {
        if (ypos >= 0) {
        ypos -= 1;
        fade -= 3;
    	fade2 -= 0.03;
        if (ypos < 5) {
        teletext.innerHTML = "" ;
        }
        }
        else {
        ypos = 96;
        character = 0;
        to_print = "";
        nextMessage();
        fade = 100;
    	fade2 = 1.0;
        }
        teletext.style.top = ypos;
        teletext.filters.alpha.opacity = fade;
    	teletext.style.opacity = fade2;
        }
        function nextMessage() {
        message = next_message[next]
        if (next == 3) {
        next = 0;
        }
        else
        next++;
        }
     // -->
     
        </script>
        <body onload="doText(message)"; >
        <div id="teletext"  class="telestyle"> </div>
        </body>
    </html>

  2. #2
    Membre Expert
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Par d�faut
    Bonjour,

    Tu pourrais nous dire ce qui ne fonctionne pas ?
    • message d'erreur
    • comportement erron�
    • ...


    Sinon, pour t'aider dans les d�veloppements, tu peux installer le plug-in Firebug pour Firefox.

  3. #3
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    teletext.innerHTML = to_print;
    avant d'utiliser un objet HTML, la moindre des choses est de le d�finir
    teletext c'est quoi pour JavaScript ?
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  4. #4
    Membre �clair� Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par d�faut
    Bonjour,

    @Bovino:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    teletext.innerHTML = to_print;
    teletex �tant l'ID de ma DIV
    Suggererais-tu getElementbyID?
    @Nesmontou:
    il y a deux incompatibilit�s avec Firefox (Qui me donne pas d'erreur, mais ne tourne pas)
    1) filter:alpha(opacity=100); (pur IE) pour Firefox il faut passer opacity:1.0;
    2) justement teletex.innerHTML - InnerHTML n'est pas interpr�t� par Firefox

  5. #5
    Membre �clair� Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par d�faut
    @ Mesmontou:

    Firebug n'est pas encore compatible Firefox 4

  6. #6
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activit� : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par d�faut
    Salut,
    Citation Envoy� par Goltar
    @Bovino: Suggererais-tu getElementbyID ?
    On ne peux pas faire autrement.

    Pour commen�er, teletext doit �tre une variable globale.
    Ensuite, on lui donne la valeur requise dans la fonction doText() qui est appel�e au chargement de la page.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    function doText(text) {
     teletext=getElementById('teletext');
     // Suite du code...
    }

  7. #7
    Membre �clair� Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par d�faut
    Merci,
    Mais �a ne r�gle pas mon probl�me, m�me sans ta suggestion cela fonctionne parfaitement sous IE. (vas t'en savoir pourquoi ? )

    Je suppose que le document.all lui suffit
    Mais je reconnais que getElementbyID serait plus adapt�, mais ce n'est pas l� que �a coince, je suis persuad� que c'est InnerHTML qui n'est pas interpr�t� correctement par Firefox.

  8. #8
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    @Goltar : oui, je pr�conisais bien l'utilisation de getElementById. Si IE (ou au moins certaines versions) est capable de r�f�rencer un objet HTML par son name et comme IE a tendance � confondre name et id, la syntaxe que tu as utilis�e "fonctionne" avec IE (mais pas forc�ment toutes les versions), il s'agit d'un comportement non garantit et d�pendant de l'interpr�tation du navigateur.

    Attention aussi que la solution propos�e par Eric2a comporte un oubli : getElementById est une m�thode de l'objet document
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    teletext=document.getElementById('teletext');
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. rendre un script compatible firefox
    Par koKoTis dans le forum G�n�ral JavaScript
    R�ponses: 0
    Dernier message: 01/03/2008, 10h26
  2. comment rendre compatible ce script avec firefox ?
    Par xav20 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 2
    Dernier message: 31/07/2007, 18h35
  3. Rendre un script IE compatible Firefox. Est-ce possible ?
    Par Elwynn dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 26/07/2007, 08h49
  4. Rendre un script compatible IE
    Par Invit� dans le forum G�n�ral JavaScript
    R�ponses: 11
    Dernier message: 29/05/2006, 16h33
  5. Fondu d'images compatible Firefox
    Par Saiyan dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 18/12/2005, 18h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo