Reconnaitre un ligne de code pour mettre une partie dans l'html et l'autre dans [Résolu]

Signaler
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007
-
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007
-
Rebonjour,
c'est un peu la suite de mon dernier post.

j'ai pleins de petit javascript dans des page html et je voudrais me faire une bibliothèque de scripts.

en analysant mon dernier post j'ai remarqué que ce n'est pas tout le code qui est à mettre dans un .js mais une partie (c'était trop beau pour être simple)

le problème c'est que je ne sait pas trop comment différencier la partie à mettre dans le .js et l'autre partie à garder dans l'html

est-ce qu'il y a une explication à ça ou peut être un bon tutoriel bien fait
cordialement.


ps : je sais que google est l'ami de tout l'monde mais il a des ennemis aussi.

8 réponses

Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
31
il ne peut pas y avoir de règles de séparation
puisqu'encore une fois un .js c'est la même chose
qu'un script dans le html.
en html, il faut dire au nevigateur attention : du javascript suit.
un .js c'est du javascript , donc rien d'autres dedans.
pas de méthode, ni de tutoriel non plus.

<script...>javascript dans le html</script>
<script src="ex.js"...></script> et des ordres/fonctions javascript dans ex.js
tout est là !

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
31
Bonjour,
pas de règles : puisque un .js c'est comme si on faisait
un copier/coller là où est mis <script src=...>, ni plus
ni moins.

<script type="text/javascript">
alert("ok");
</script>

c'est exactement la même chose que

<script type="text/javascript" src="ex.js"></script>

avec dans ex.js : alert("ok");
il n'y a donc pas de javascript à mettre dans un .js
et d'autres à conserver dans le html : c'est la même chose.
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>

</FO>
</S< body>
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007

ok
mais comment ça se fait que lorsque je mets dans une page html :

<HTML>
<head>
<style>
.spanstyle {
position:absolute;
visibility:visible;
top:-50px;
font-size:10pt;
font-family:Arial;
font-weight:bold;
color:#000000;
}
</style>
<script>
/*
Ce script se nomme :
Texte qui suit la souris :-)
*/
var x,y
var step=20
var flag=0
var message='Votre texte a placez ;-) '
message=message.split("")
var xpos=new Array()
for (i=0;i<=message.length-1;i++) {
xpos[i]=-50
}
var ypos=new Array()
for (i=0;i<=message.length-1;i++) {
ypos[i]=-50
}
function handlerMM(e){
x = (document.layers) ? e.pageX : document.body.scrollLeft+event.clientX
y = (document.layers) ? e.pageY : document.body.scrollTop+event.clientY
flag=1
}
function makesnake() {
if (flag==1 && document.all) {
for (i=message.length-1; i>=1; i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0; i<message.length-1; i++) {
var thisspan = eval("span"+(i)+".style")
thisspan.posLeft=xpos[i]
thisspan.posTop=ypos[i]
}
}
else if (flag==1 && document.layers) {
for (i=message.length-1; i>=1; i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0; i<message.length-1; i++) {
var thisspan = eval("document.span"+i)
thisspan.left=xpos[i]
thisspan.top=ypos[i]
}
}
var timer=setTimeout("makesnake()",30)
}
</script>
</head>

<script>
for (i=0;i<=message.length-1;i++) {
document.write("")
document.write(message[i])
document.write("")
}

if (document.layers){
document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = handlerMM;
makesnake()
</script>



ça fonctionne bien

mais lorsque je mets :

.spanstyle {
position:absolute;
visibility:visible;
top:-50px;
font-size:10pt;
font-family:Arial;
font-weight:bold;
color:#000000;
}

Ce script se nomme :
Texte qui suit la souris :-)
*/
var x,y
var step=20
var flag=0
var message='Votre texte a placez ;-) '
message=message.split("")
var xpos=new Array()
for (i=0;i<=message.length-1;i++) {
xpos[i]=-50
}
var ypos=new Array()
for (i=0;i<=message.length-1;i++) {
ypos[i]=-50
}
function handlerMM(e){
x = (document.layers) ? e.pageX : document.body.scrollLeft+event.clientX
y = (document.layers) ? e.pageY : document.body.scrollTop+event.clientY
flag=1
}
function makesnake() {
if (flag==1 && document.all) {
for (i=message.length-1; i>=1; i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0; i<message.length-1; i++) {
var thisspan = eval("span"+(i)+".style")
thisspan.posLeft=xpos[i]
thisspan.posTop=ypos[i]
}
}
else if (flag==1 && document.layers) {
for (i=message.length-1; i>=1; i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0; i<message.length-1; i++) {
var thisspan = eval("document.span"+i)
thisspan.left=xpos[i]
thisspan.top=ypos[i]
}
}
var timer=setTimeout("makesnake()",30)
}
for (i=0;i<=message.length-1;i++) {
document.write("")
document.write(message[i])
document.write("")
}

if (document.layers){
document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = handlerMM;
makesnake()

ben ya rien qui se passe?
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007

j'ai pas les couleurs en choix ??
bref j'enlève les balise et quand j'enleve ya rien qui se passe
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
31
sans la balise <script type="text/javascript"> ( et pas <script> )
au début du code javascript et </script>, le navigateur ne peut
pas savoir que cela en est, du javascript. il considère ça comme
du texte banal, il ne fait que l'afficher et ne l'exécute pas.
c'est dans le .js qu'on ne met pas ces balises, elles sont dans le html.
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007

oui c'est bien ça je met mon script sans balise dans un .js :
.spanstyle {
position:absolute;
visibility:visible;
top:-50px;
font-size:10pt;
font-family:Arial;
font-weight:bold;
color:#000000;
}

Ce script se nomme :
Texte qui suit la souris :-)
*/
var x,y
var step=20
var flag=0
var message='Votre texte a placez ;-) '
message=message.split("")
var xpos=new Array()
for (i=0;i<=message.length-1;i++) {
xpos[i]=-50
}
var ypos=new Array()
for (i=0;i<=message.length-1;i++) {
ypos[i]=-50
}
function handlerMM(e){
x = (document.layers) ? e.pageX : document.body.scrollLeft+event.clientX
y = (document.layers) ? e.pageY : document.body.scrollTop+event.clientY
flag=1
}
function makesnake() {
if (flag==1 && document.all) {
for (i=message.length-1; i>=1; i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0; i<message.length-1; i++) {
var thisspan = eval("span"+(i)+".style")
thisspan.posLeft=xpos[i]
thisspan.posTop=ypos[i]
}
}
else if (flag==1 && document.layers) {
for (i=message.length-1; i>=1; i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0; i<message.length-1; i++) {
var thisspan = eval("document.span"+i)
thisspan.left=xpos[i]
thisspan.top=ypos[i]
}
}
var timer=setTimeout("makesnake()",30)
}
for (i=0;i<=message.length-1;i++) {
document.write("")
document.write(message[i])
document.write("")
}

if (document.layers){
document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = handlerMM;
makesnake()




et je l'appel dans mon fichier html mais ça ne fonctionne pas comme mon dernier post :
http://www.javascriptfr.com/forum.v2.aspx?ID=679750

dont le probleme à été résolu en séparant le script (une partie dans l'html et l'autre dans le .js)
cordialement
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007

c'est pour cela que je voulais savoir si il y avait une "règle de séparation" ou une méthode ou un bon tutoriel bien fait lorsqu'on veut faire appel à des .js

cordialement
Messages postés
385
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
3 juillet 2007

c'est bon j'ai mis dans le .js que le code en javascript ça fonctionne maintenant merci.