Fermer la barre d'outils
Voir plus d'options
Voir moins d'options
les-forums.com : vous avez la parole
En moins de 5 minutes,
créez votre forum gratuitement
forum officiel aide/faq
support technique
Accueil Séparateur Présentation Séparateur Créez ! Séparateur Annuaire
Bienvenue sur le forum officiel de les-forums.com.
L'apprentissage des bases du HTML requises pour la personnalisation des forums concerne le sous-forum Programmation, tandis que les gros problèmes techniques sont à adresser au Support. La FAQ vous sera également très utile.
De plus, une lecture du bref règlement du forum pourra éviter bien des tracas.
Nous vous écoutons, soyez polis, patients et précis dans vos questions.
Testez le nouveau chat sur les-forums.com, en beta-test (s'ouvrira dans une nouvelle fenêtre ou onglet)

les-forums.com - Forum officiel
Tout sur les thèmes (60 topics, 464 messages)
Topic "Forum en anglais (was: un pti coup de pouce svp)" (Messages 26 à 46 sur 46) Fil RSS des messages de ce topic
Dernier message par Ashe, le 12/02 à 02:11:13
Anonyme :
  • S'inscrire
  • S'identifier
Outils :
  • Recherche
 
Bas de la pageTopics
Page 2 sur 2
<12
 
Ashe
inscrit le 15/12/2006
le 04/02/2007 à 22:11:56
Acces au message un pti coup de pouce svp
bah en fait regarde:
 quand j'affiche la partie  :

document.getElementById('zone_nav_droite_identification').getElementsByTagName('a')[0].innerHTML = 'Log In';
tu es bien d'accord que le lien pour s'identifier est à l'adresse http://nomduforum.les-forums.com/?logout_ok
donc cette partie du code s'appliquera a l'adresse ci dessu.

cependant, apre identification l'adresse de la page change  d'ou http://nomduforum.les-forums.com/?login_ok

et admetton quand je place la partie de code restante associée aux liens profil, deconnection, etc... , cela ne fonctionne pas.

en fait je ne peux qu'appliquer le script a une seule adresse
Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 00:33:19
Acces au message un pti coup de pouce svp
mais non, les adresses des liens n'ont rien à y voir, le lien c'est le lien, c'est tout. où vois-tu qu'on se préoccupe des adresses dans le code que je t'ai montré ? nulle part ! tu utilises les identifiants de style pour pointer vers les liens, pas leurs adresses.
tu peux changer dynamiquement l'adresse vers laquelle il pointe si tu veux, ça restera le même lien du point de vue du DOM et de Javascript.
tu inventes des difficultés qui n'existent pas, ou alors je n'ai rien compris à ta question.

si ça ne fonctionne pas, il y a une autre raison.

"appliquer le script à une seule adresse" (?)-> pas compris
Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 00:39:18
Acces au message un pti coup de pouce svp
par ailleurs le lien d'identification pointe vers cette adresse : http://demo.les-forums.com/login.cgi (exemple avec Démo)
de même le lien d'inscription pointe vers une autre adresse : http://gloups.les-forums.com/fiche_user.cgi
le lien de déconnexion, lui, pointe ici : http://demo.les-forums.com/disconnect.cgi

donc je ne comprends pas d'où tu sors http://nomduforum.les-forums.com/?logout_ok et http://nomduforum.les-forums.com/?login_ok ...?

mais -je te le répète- les adresses des liens n'ont aucune incidence sur notre script, qui ne se préoccupe que de changer le texte qu'ils contiennent, en les repérant par leur identifiant (id="..." dans la balise HTML <A ...> ... </A> )

Message modifié le 05/02 à 00:40:39 par Babaorum.

Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 05/02/2007 à 01:20:23
Acces au message un pti coup de pouce svp
ouais lol je viens de me rendre compte de ma connerie en me relisant, je m'embrouyais tellement que j'en ai marqué des bétises.

enfin bon pour faire plus concret sa donne sa:

mon script de base:

<script type="text/javascript">
 function translate() {  

document.getElementById('zone_nav_droite_deconnection').getElementsByTagName('a')[0].innerHTML = 'Log Off';
    document.getElementById('zone_nav_droite_profil').getElementsByTagName('a')[0].innerHTML = 'Profile';
    document.getElementById('zone_nav_droite_recherche').getElementsByTagName('a')[0].innerHTML = 'Search';
    document.getElementById('zone_nav_droite_messagerie').getElementsByTagName('a')[0].innerHTML = 'Mesg';
    document.getElementById('zone_nav_droite_liens').getElementsByTagName('a')[0].innerHTML = 'My links';
    document.getElementById('zone_nav_droite_favoris').getElementsByTagName('a')[0].innerHTML = 'Favorites';
    }
</script>

<body onload="translate()">
 </body>
 
jusque la ça va , MAIS (malheuresement il y a un mais >.<;)

après avoir ajouté cela :

document.getElementById('zone_nav_droite_identification').getElementsByTagName('a')[0].innerHTML = 'Log In';

document.getElementById('zone_nav_droite_inscription').getElementsByTagName('a')[0].innerHTML = 'Register';

(!)(!)(!)

ça donne sa en tout:

<script type="text/javascript">
 function translate() {  

   document.getElementById('zone_nav_droite_identification').getElementsByTagName('a')[0].innerHTML = 'Log In';
    document.getElementById('zone_nav_droite_inscription').getElementsByTagName('a')[0].innerHTML = 'Register';

    document.getElementById('zone_nav_droite_deconnection').getElementsByTagName('a')[0].innerHTML = 'Log Off';
    document.getElementById('zone_nav_droite_profil').getElementsByTagName('a')[0].innerHTML = 'Profile';
    document.getElementById('zone_nav_droite_recherche').getElementsByTagName('a')[0].innerHTML = 'Search';
    document.getElementById('zone_nav_droite_messagerie').getElementsByTagName('a')[0].innerHTML = 'Mesg';
    document.getElementById('zone_nav_droite_liens').getElementsByTagName('a')[0].innerHTML = 'My links';
    document.getElementById('zone_nav_droite_favoris').getElementsByTagName('a')[0].innerHTML = 'Favorites';
    }
</script>

normalement  cela devrait fonctionner ! or seules ces 2 valeurs sont exprimées:

    document.getElementById('zone_nav_droite_identification').getElementsByTagName('a')[0].innerHTML = 'Log In';
    document.getElementById('zone_nav_droite_inscription').getElementsByTagName('a')[0].innerHTML = 'Register';

dans le cas contraire si je les place a la fin du script
ce sont les autres valeur qui sont exprimées (profil etc...) exceptées identification et inscription.

voyant cela et n'ayant pas compri mon erreur car mon script semble correct je me suis demandé d'ou cela pouvait venir donc j'ai fais un rapprochement ( cela dit mauvais ^^) avec les adresses

Message modifié le 05/02 à 01:22:38 par Ashe.

Voir le profil de l'auteur Editer le message
Twidi
maire
[...]I have looked in the mirror every morning and asked myself: "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "No" for too many days in a row, I know I need to change something."
 - Steve Jobs -
inscrit le 18/04/2001
le 05/02/2007 à 01:24:49
Acces au message un pti coup de pouce svp
Pour les liens qui ne sont pas toujours présents (c'est à dire presque tous), il faut changer
document.getElementById('IDENTIFIANT_ELEMENT').getElementsByTagName('a')[0].innerHTML = 'TEXTE';
par
var el = document.getElementById('IDENTIFIANT_ELEMENT');
if (typeof(el) != 'undefined') { el.getElementsByTagName('a')[0].innerHTML = 'TEXTE'; }


explication rapide: il est impossible de modifier un lien qui n'existe pas, donc le javascript génère une erreur et s'arrête, il faut donc, avant la modification, tester que le lien existe
Voir le profil de l'auteur Editer le message
Twidi
maire
[...]I have looked in the mirror every morning and asked myself: "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "No" for too many days in a row, I know I need to change something."
 - Steve Jobs -
inscrit le 18/04/2001
le 05/02/2007 à 01:28:39
Acces au message un pti coup de pouce svp
le mieux est de faire une fonction (codée spécifiquement pour la zone de navigation en haut à droite)
function traduc(id, text) {
  var el = document.getElementById('zone_nav_droite_'+id);
  if (typeof(el) != 'undefined') { el.getElementsByTagName('a')[0].innerHTML = text; }
}

et de l'utiliser comme ça :
traduc('inscription', 'Register');
traduc('deconnection', 'Log Off');
et ainsi de suite (attention, la partie "zone_nav_droite_" est indiquée dans la fonction, donc pas la peine de mettre cette partie lors de l'appel de la fonction. )

Message modifié le 05/02 à 01:29:02 par Twidi.

Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 01:36:48
Acces au message un pti coup de pouce svp
Ouaip, j'avais fait un truc du genre:
function translate() {

var identifiants=new Array(
 'profil',
 'deconnection',
 'recherche',
 'messagerie',
 'inscription',
 'identification',
 'liens',
 'favoris',
 'utilisateurs',
 'admin');
var nouv_textes=new Array(
 'Profile',
 'Log out',
 'Search',
 'P.M.',
 'Sign in',
 'Log in',
 'Links',
 'Favorites',
 'Users',
 'Settings');
var nouv_titres=new Array(
 'See and change your profile (sig, avatar)',
 'Log out not to let anything accessing your account on this computer',
 'Find something on the board',
 'Private messages between board members',
 'Create your own account on the board',
 'Access your board account',
 'Web links that will follow you everywhere on the net',
 'Your favorites topics',
 'See the users list and manage them',
 'Tweak all the settings of your board');
for(var n=0,identifiant; identifiant=identifiants[n]; n++) {
 if(document.getElementById('zone_nav_droite_'+identifiant)) {
  document.getElementById('zone_nav_droite_'+identifiant).getElementsByTagName('a')[0].innerHTML=nouv_
textes[n];
  document.getElementById('zone_nav_droite_'+identifiant).getElementsByTagName('a')[0].setAttribute('t
itle',nouv_titres[n]);
 }
}
var identifiants2=new Array('outils','filtres','gestion');
var nouv_textes2=new Array('Tools :','Filters :','Management :');
for(var n=0,identifiant; identifiant=identifiants2[n]; n++) {
 if(document.getElementById('ligne_nav_droite_'+identifiant)) {
  document.getElementById('ligne_nav_droite_'+identifiant).firstChild.firstChild.nodeValue=nouv_textes
2[n];
 }
}

}

Ca faisait tout le bloc à droite.
Voir le profil de l'auteur Editer le message
Twidi
maire
[...]I have looked in the mirror every morning and asked myself: "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "No" for too many days in a row, I know I need to change something."
 - Steve Jobs -
inscrit le 18/04/2001
le 05/02/2007 à 01:38:45
Acces au message un pti coup de pouce svp
bon je dis pu rien (;)
Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 05/02/2007 à 01:41:12
Acces au message un pti coup de pouce svp
hum ah oui je comprend mieux pourquoi le code ne fonctionnait que partiellement
merci pour l'aide je vais pouvoir avancer maintenant
Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 01:43:24
Acces au message un pti coup de pouce svp
en fait tu peux automatiser encore mieux et encore plus trash, avec des tableaux anonymes et en spécifiant l'identifiant entièrement en littéral (ou alors des hackages de tableaux anonymes pour trier par "racine" d'identifiant puis par le bout spécifique de l'identifiant). 8-)

c'est vite fait, pfiouuuuu

en revanche et même si j'ai utilisé les deux méthodes (getElementsByTagName('a')[0].innerHTML et firstChild.firstChild.nodeValue), je pense que la 2ème est plus économe en ressources mémoire pour le script, car on lui dit directement où aller au lieu d'initialiser un tableau pour une seule valeur.

Que ce soient les éléments LI hébergeant les liens "Profil", "Déconnexion", etc ou les TR hébergeant les cellules des libellés de texte "Outils","Filtres,"Gestion"... on pointe toujours vers un conteneur(élément LI dans le 1er cas, TR dans le 2e), qui ne contient qu'un seul élément fils (élement A dans le 1er cas, TH dans le 2e), lequel contient comme seul élément fils le noeud texte qu'on veut remplacer. Ca me semble donc plus "pur" et plus classieux (::)

Message modifié le 05/02 à 01:49:16 par Babaorum.

Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 02:07:25
Acces au message un pti coup de pouce svp
Un truc du genre:
var table_traduction=new Array(
 ['zone_nav_droite_profil','Profile','See and change your profile (sig, avatar)'],
 ['zone_nav_droite_deconnection','Log out','Log out not to let anything accessing your account on this computer'],
 ['zone_nav_droite_recherche','Search','Find something on the board'],
 ['zone_nav_droite_messagerie','P.M.','Private messages between board members'],
 ['zone_nav_droite_inscription','Sign in','Create your own account on the board'],
 ['zone_nav_droite_identification','Log in','Access your board account'],
 ['zone_nav_droite_liens','Links','Web links that will follow you everywhere on the net'],
 ['zone_nav_droite_favoris','Favorites','Your favorites topics'],
 ['zone_nav_droite_utilisateurs','Users','See the users list and manage them'],
 ['zone_nav_droite_admin','Settings','Tweak all the settings of your board']
 ['ligne_nav_droite_outils','Tools :',''],
 ['ligne_nav_droite_filtres','Filters :',''],
 ['ligne_nav_droite_gestion','Management :','']
);
for(var n=0,identifiant; identifiant=table_traduction[n][0]; n++) {
 if(document.getElementById(identifiant)) {
  document.getElementById(identifiant).firstChild.firstChild.nodeValue=table_traduction[n][1];
  if(table_traduction[n][2]!='') {document.getElementById(identifiant).firstChild.setAttribute('title',table_traduction[n][2]);}
 }
}

Avec ce genre de choses, tu ne touches pas au code tant que la structure HTML des pages du forum ne changent pas, tu ne fais que rajouter des lignes dans la déclaration du tableau de tableaux anonymes. ;)

Message modifié le 05/02 à 02:09:04 par Babaorum.

Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 05/02/2007 à 02:12:59
Acces au message un pti coup de pouce svp
oui mais donc si cela n'affecte rien pourquoi tu ecris sa o_O

Message modifié le 05/02 à 02:18:17 par Ashe.

Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 02:20:03
Acces au message un pti coup de pouce svp
de quoi tu parles exactement, Ashe (pitié, sois plus clair, plus précis... on est 3 à participer, Twidi, toi et moi, et on a tous posté plusieurs messages ce soir... difficile de savoir à quoi tu fais référence; utilise les citations pour éclaircir tes références)
Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 05/02/2007 à 02:22:59
Acces au message un pti coup de pouce svp
tu dis
 
tu ne fais que rajouter des lignes dans la déclaration du tableau de tableaux anonymes.

donc  ton code n'agit sur rien et est donc inutile  vu que la structure HTML du forul ne change pas


Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 05/02/2007 à 02:27:05
Acces au message un pti coup de pouce svp
non, je ne vois pas comment tu déduis que mon code n'agit sur rien: si tu l'essaies, tu verras que ça fonctionne, je l'ai essayé. ^^
là on parle de code Javascript, alors que je parlais du code HTML qui ne doit pas changer, celui généré par le serveur de les-forums et qui compose les pages des forums. ;)
je disais simplement qu'avec ce type de code JS comme celui ci-dessus, tu n'as qu'à modifier les valeurs des variables pour ajouter de nouvelles règles de conversion et que tu ne touches pas au code qui agit réellement.
il y a dans mon code JS deux parties: le code qui décrit (les variables) et le code qui agit: la bouche for()... mais les deux sont du code JS.
une boucle applique le même code à toutes les variables que tu lui fournis, pour peu que tu respectes la structure des données (qui est assez simple: identifiant, texte, titre-popup dans des crochets carrés).

Message modifié le 05/02 à 02:29:38 par Babaorum.

Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 05/02/2007 à 02:27:10
Acces au message un pti coup de pouce svp
que j'utilise la methode de twidi ou la tienne pour le code cela ne fonctionne pas pourtant il me semble que j'ai correctement agencé les balises scripts!


<script type="text/javascript">
function translate() {

var identifiants=new Array(
 'profil',
 'deconnection',
 'recherche',
 'messagerie',
 'inscription',
 'identification',
 'liens',
 'favoris',
 'utilisateurs',
 'admin');
var nouv_textes=new Array(
 'Profile',
 'Log out',
 'Search',
 'P.M.',
 'Sign in',
 'Log in',
 'Links',
 'Favorites',
 'Users',
 'Settings');
var nouv_titres=new Array(
 'See and change your profile (sig, avatar)',
 'Log out not to let anything accessing your account on this computer',
 'Find something on the board',
 'Private messages between board members',
 'Create your own account on the board',
 'Access your board account',
 'Web links that will follow you everywhere on the net',
 'Your favorites topics',
 'See the users list and manage them',
 'Tweak all the settings of your board');
for(var n=0,identifiant; identifiant=identifiants[n]; n++) {
 if(document.getElementById('zone_nav_droite_'+identifiant)) {
  document.getElementById('zone_nav_droite_'+identifiant).getElementsByTagName('a')[0].innerHTML=nouv_

textes[n];
  document.getElementById('zone_nav_droite_'+identifiant).getElementsByTagName('a')[0].setAttribute('t

itle',nouv_titres[n]);
 }
}
var identifiants2=new Array('outils','filtres','gestion');
var nouv_textes2=new Array('Tools :','Filters :','Management :');
for(var n=0,identifiant; identifiant=identifiants2[n]; n++) {
 if(document.getElementById('ligne_nav_droite_'+identifiant)) {
  document.getElementById('ligne_nav_droite_'+identifiant).firstChild.firstChild.nodeValue=nouv_textes

2[n];
 }
}

}
</script>

<body onload="translate()">
</body>

rassure moi c'est correct non?
Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 10/02/2007 à 12:08:05
Acces au message un pti coup de pouce svp
alo?(??)
Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 11/02/2007 à 00:26:04
Acces au message un pti coup de pouce svp
hum bizar jai implanté mon code correctement :

<script type="text/javascript">
function translate() {

var identifiants=new Array(
 'profil',
 'deconnection',
 'recherche',
 'messagerie',
 'inscription',
 'identification',
 'liens',
 'favoris',
 'utilisateurs',
 'admin');
var nouv_textes=new Array(
 'Profile',
 'Log out',
 'Search',
 'P.M.',
 'Sign in',
 'Log in',
 'Links',
 'Favorites',
 'Users',
 'Settings');
var nouv_titres=new Array(
 'See and change your profile (sig, avatar)',
 'Log out not to let anything accessing your account on this computer',
 'Find something on the board',
 'Private messages between board members',
 'Create your own account on the board',
 'Access your board account',
 'Web links that will follow you everywhere on the net',
 'Your favorites topics',
 'See the users list and manage them',
 'Tweak all the settings of your board');
for(var n=0,identifiant; identifiant=identifiants[n]; n++) {
 if(document.getElementById('zone_nav_droite_'+identifiant)) {
  document.getElementById('zone_nav_droite_'+identifiant).getElementsByTagName('a')[0].innerHTML=nouv_

textes[n];
  document.getElementById('zone_nav_droite_'+identifiant).getElementsByTagName('a')[0].setAttribute('t

itle',nouv_titres[n]);
 }
}
var identifiants2=new Array('outils','filtres','gestion');
var nouv_textes2=new Array('Tools :','Filters :','Management :');
for(var n=0,identifiant; identifiant=identifiants2[n]; n++) {
 if(document.getElementById('ligne_nav_droite_'+identifiant)) {
  document.getElementById('ligne_nav_droite_'+identifiant).firstChild.firstChild.nodeValue=nouv_textes

2[n];
 }
}

}

</script>

<body onload="translate()">
</body>


avec dans la balise body :

onload=translate()

car quand je met onload="translate"()
la balise body n'accepte pas les double quote "

ou est mon erreur svp? je patoge alor que c'est bon ! j'ai compris comment sa fonctionnais j'ai tout agencé comme il faut et ça ne marche tjr pas -.-
Voir le profil de l'auteur Editer le message
Babaorum
adjoint
Lisez la FAQ! (*)
inscrit le 22/04/2002
le 11/02/2007 à 10:35:34
Acces au message un pti coup de pouce svp
ben creuse-toi un peu la tête, je ne peux pas tout faire à ta place Ashe... bon, mets des apostrophes simples... ' au lieu de "

sinon ce serait bien que, si erreur il y a, tu nous donnes les codes et les messages d'erreur... ça aide, car là tu nous demandes de déboguer "comme ça", à la volée. On est pas magiciens :p

par ailleurs tu ne dois pas mettre <body> ... </body> où que ce soit dans le code à intégrer, je te l'ai déjà expliqué, car la balise body existe déjà, dans chacune des pages web du forum...

Message modifié le 11/02 à 10:36:26 par Babaorum.

Voir le profil de l'auteur Editer le message
Twidi
maire
Al Gore : Ce n'est pas comme si le lobby du pétrole avait trop d'influence à la Maison Blanche. Le problème est que le lobby du pétrole, c'est la Maison Blanche
inscrit le 18/04/2001
le 11/02/2007 à 11:07:41
Acces au message un pti coup de pouce svp
et puis il y a des bouts de trucs seuls sur leur ligne, du style "2[n]", "itle"... mauvais copié collé !
Voir le profil de l'auteur Editer le message
Ashe
inscrit le 15/12/2006
le 12/02/2007 à 02:11:13
Acces au message un pti coup de pouce svp
c'est bon jai reussi  
merci pour l'aide
dsl je sais que vous n'etes pas magiciens mais vous etes des pros et moi pas xD c'est pour cela que je suis venu vous demander de l'aide
merci a vous encore une fois:D

je ne pensai pas qu'un espace dans le script avait autant d'importance :o interressant :)

Message modifié le 12/02 à 02:22:55 par Ashe.

Voir le profil de l'auteur Editer le message
 
Haut de la pageTopics
Page 2 sur 2
<12
 
Ajout de messages impossible Vous ne pouvez pas ajouter de messages.

Forum gratuit proposé par les-forums.com v 2.7 alpha - Un service Twidi.com - Flux RSS du forum

Page générée en 0,032 secondes le 08/08 à 20:42:33.