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 :

texte défilant depuis un txt


Sujet :

JavaScript

  1. #21
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Citation Envoyé par Aedonya
    J'ai dû louper autre chose...
    PHP ne sert pas uniquement à génerer et servir des pages HTML. En fait, avec PHP on peut renvoyer des fichiers textes (html, css, js, txt, xml...), des images (gif, png, bmp, ...), du multimedia (mp3, flv, ...), et bien d'autres (pdf, zip...).

    Il suffit de spécifier le type MIME associé au format de données. Concernant les fichiers Javascript, le type MIME est text/javascript (ou application/x-javascript).

    Citation Envoyé par Aedonya
    ... ça ne marche toujours pas
    Probablement parce que tu as placé les balises HTML dans ton fichier JS.

    N'oublie de renvoyer le texte avec les quillemets échappés, en effet si le fichier dernierebreve.php renvoie le texte...
    Ce texte contient des guillemets "non échappés"
    La ligne texte = "<?php include('dernierebreve.php'); ?>"; donnera :
    texte="Ce texte contient des guillemets "non échappés""; // Erreur
    ce qui provoquera une erreur de syntaxe Javascript.

    Tandis que
    texte="Ce texte contient des guillemets \"non échappés\"";
    est correct.


    Concernant AJAX, je te recommande la lecture des meilleurs cours et tutoriels AJAX.

    Ci dessous un exemple de code adapté à ton cas...
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    		<title>Test</title>
    		<script type="text/javascript">//<![CDATA[
    			var	size=150,
    				x=3*size,
    				texte,
    				texteDef;
     
    			function defil(){
    				texteDef=texteDef.substring(1,texteDef.length);
    				while(texteDef.length<x){
    					texteDef+="               "+texte;
    				}
    				document.getElementById('defilant').defilbox.value=texteDef;
    				setTimeout(defil,150);
    			}
     
    			function getXHR(){
    				var e;
    				if(window.XMLHttpRequest)
    					xhr=new XMLHttpRequest();
    				else if(window.ActiveXObject){
    					try{
    						xhr=new ActiveXObject('Msxml2.XMLHTTP');
    					}catch(e){
    						xhr=new ActiveXObject('Microsoft.XMLHTTP');
    					}
    				}else
    					xhr=false;
     
    				return xhr;
    			}
     
    			function scroll_Start(){
    				xhr=getXHR();
    				if(!xhr){
    					alert('Votre navigateur ne supporte pas les objets XMLHTTPRequest...');
    					return;
    				}
    				xhr.open('GET','dernierebreve.php',true);
    				xhr.onreadystatechange=function(){
    					if(xhr.readyState==4){
    						if(xhr.status==200){
    							texte=xhr.responseText;
    							texteDef=texte;
    							defil();
    						}
    					}
    				};
    				xhr.send(null);
    			}
     
    			window.onload=scroll_Start;
    		//]]>
    		</script>
    	</head>
    	<body>
    		<form id="defilant" action="">
    			<p>
    				<a href="./breves.php">
    					<input type="text" id="defilbox" size="150" value="" />
    				</a>
    			</p>
    		</form>
    	</body>
    </html>

  2. #22
    Membre à l'essai
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2008
    Messages : 22
    Points : 12
    Points
    12
    Par défaut
    Merci Eric2a pour ta réponse tard dans la nuit... J'avais les idées plus claires ce matin.

    L'idée des côtes était pas mal. En l’occurrence il n'y en avait pas dans le texte mais ça m'a fait tester ce cas de figure. Je me suis un peu pris la tête car une fois les cotes échappée avec le php, je n'arrivais pas à les convertir à nouveau dans le js.

    J'ai alors essayé le code que tu m'a concocté et je l'ai adopté. Je l'ai juste mis dans un fichier externe et ça marche nickel.
    Je vais maintenant m'atteler à comprendre tout ça parce que c'est pas le tout de copier coller mais je voudrais le réutiliser plus tard et savoir le manipuler.


    Merci encore

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/05/2010, 15h18
  2. Récupération d'un texte depuis un .txt sur le web
    Par warvector dans le forum Débuter
    Réponses: 2
    Dernier message: 24/02/2009, 00h47
  3. [FLASH MX2004] Texte défilant
    Par willowII dans le forum Flash
    Réponses: 9
    Dernier message: 08/10/2008, 15h19
  4. Réponses: 3
    Dernier message: 19/12/2005, 13h56
  5. Réponses: 3
    Dernier message: 05/04/2005, 11h52

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