Tutoriels vidéo art graphique gratuits

 
Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Pages: [1]   En bas

Auteur Sujet: Codes Javascript : liens ne tenant pas compte des espaces  (Lu 6836 fois)

floor

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 27
    • Voir le profil
Codes Javascript : liens ne tenant pas compte des espaces
« le: mai 20, 2013, 17:44:59 pm »

Bonjour  :D,
je veux créer des liens sur un forum
entre des noms d'artistes cités et leur bio.
Comme la liste est longue,
j'ai généré le javascript avec :
["{TOPICTITLE}","/t{TOPICID}-"] dans : PA > Modules > Gestion des pages HTML > Créer une nouvelle page HTML

ma liste est à priori ok elle débute comme ça :

var txt_to_url=[
['telephone','/t236-telephone-'],
['bon scott','/t778-bon-scott-'],
['sortilege','/t671-sortilege-'],
['simon & garfunkel','/t204-simon-&-garfunkel-'],
['airbourne','/t626-']

mais je me retrouve avec des liens dans le forum sur par ex :
bon ou scott pour bon scott

comment dois-je faire pour qu'il ne tienne pas compte des espaces ?

Est-ce que quelqu'un pourrait m'aider ? :)
IP archivée

metaroid

  • Wisi Addict
  • ***
  • Hors ligne Hors ligne
  • Messages: 187
    • Voir le profil
    • Portfolio infographiste metaroid
Re : Codes Javascript : liens ne tenant pas compte des espaces
« Réponse #1 le: mai 21, 2013, 09:32:51 am »

Salut,

Je suis pas sûr de tout bien saisir. Tu veux dire que tu as un process qui écrit à la volée des liens sur des pages en fonctions des mots qu'il rencontrerait dans ton tableau, et dès qu'il y a un mot "bon" ... un lien vers Bon Scott est créé ?
IP archivée
Less is more

Alainn

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 6
    • Voir le profil
Re : Codes Javascript : liens ne tenant pas compte des espaces
« Réponse #2 le: mai 21, 2013, 09:54:22 am »

Oui c'est bien cela je pense!!
IP archivée

metaroid

  • Wisi Addict
  • ***
  • Hors ligne Hors ligne
  • Messages: 187
    • Voir le profil
    • Portfolio infographiste metaroid
Re : Codes Javascript : liens ne tenant pas compte des espaces
« Réponse #3 le: mai 21, 2013, 10:00:59 am »

Je ne vois que les expressions régulières pour corriger ça, mais reste à savoir si Floor à accès à la partie du code qui écrit les liens ...
IP archivée
Less is more

floor

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 27
    • Voir le profil
Re : Re : Codes Javascript : liens ne tenant pas compte des espaces
« Réponse #4 le: mai 21, 2013, 12:03:40 pm »

Salut,

Je suis pas sûr de tout bien saisir. Tu veux dire que tu as un process qui écrit à la volée des liens sur des pages en fonctions des mots qu'il rencontrerait dans ton tableau, et dès qu'il y a un mot "bon" ... un lien vers Bon Scott est créé ?

oui il crée la liste des groupes dans html avec ce procédé
Téléphone (lien vers bio)
Bon Scott (lien vers bio)
Sortilège (lien vers bio)
Simon & Garfunkel (lien vers bio)
Aibourne (lien vers bio)
 
et oui je peux avoir accès aux codes pour rajouter ce qu'il manque pour mon problème mais je ne suis pas l'adm je dois l'aider sur ce problème.
Le pire ;D c'est qu'il y a des liens aussi sur des mots comme amusement !
partout dans le forum  ::)
IP archivée

floor

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 27
    • Voir le profil
Re : Codes Javascript : liens ne tenant pas compte des espaces
« Réponse #5 le: mai 22, 2013, 08:06:10 am »

J'ai oublier de dire que je n'y connais rien en codes javascript (l'adm non plus) et je n'ai fait que copier coller les codes qu'on m'a donner pour faire ces liens entre les noms cités dans le forum et leur bio. voilà ce qu'on m'a dit de mettre dans le javascript.
Peut-être saurez vous ce que je peux rajouter pour mon problème ?
Merci si vous pouvez m'aider.

var txt_to_url=[
['telephone','/t236-telephone-'],
['bon scott','/t778-bon-scott-'],
['sortilege','/t671-sortilege-'],
['simon & garfunkel','/t204-simon-&-garfunkel-'],
['airbourne','/t626-'],
];
function txtToUrlNode(a) {
if(a.nodeType == 3) {
for(var b in txt_to_url) {
if(a.nodeValue.indexOf(txt_to_url[b][0])!=-1) {
$(a).replaceWith($('<div />').text(a.nodeValue).html().split($('<div />').text(txt_to_url[b][0]).html()).join('<a href="'+txt_to_url[b][1].replace(/"/g,'"').replace(/</g,'<').replace(/>/g,'>')+'">'+$('<div />').text(txt_to_url[b][0]).html()+'</a>'))
}
}
}else {
if(a.hasChildNodes()) {
a = a.childNodes;
for(b = 0;b < a.length;b++) {
txtToUrlNode(a[b])
}
}
}
}

$(function(){
$("div.postbody div" + ($("body#phpbb").length ? ".content div" : $("#ipbwrapper").length ? ".post-entry div:not(.clear)" : $("#pun-foot").length ? ".entry-content div div:not(.clear)" : "")).each(function() {
txtToUrlNode(this)
})
});
var ite, new_txt_to_url = [],
key, new_key;
for (ite in txt_to_url) {
key = txt_to_url[ite][0].toLowerCase();
new_txt_to_url.push([key, txt_to_url[ite][1]]);
// si y'a pas de caractère spécial on ne fait rien
if (/^[ -~]*$/.test(key)) continue;
// sinon on retire les accents, et si y'en avait un on duplique l'entrée
new_key = key.replace(/[àáâãäå]/g, "a").replace(/[èéêë]/g, "e").replace(/[ìíîï]/g, "i").replace(/ñ/g, "n").replace(/[òóôõö]/g, "o").replace(/[ùúûü]/g, "u").replace(/[ýÿ]/g, "y");
if (key != new_key)
new_txt_to_url.push([new_key, txt_to_url[ite][1]]);
}
txt_to_url = [];
for (ite in new_txt_to_url) {
key = new_txt_to_url[ite][0];
// on ajoute l'entrée en minuscule
txt_to_url.push([key, new_txt_to_url[ite][1]]);
// on ajoute l'entrée en majuscule
if (key.toUpperCase() != key)
txt_to_url.push([key.toUpperCase(), new_txt_to_url[ite][1]]);
// on ajoute l'entrée avec une majuscule à chaque première lettre de mot
new_key = key.replace(/\w\S*/g, function (txt) {
return txt.charAt(0).toUpperCase() + txt.substr(1);
});
if (new_key != key && new_key != key.toUpperCase())
txt_to_url.push([new_key, new_txt_to_url[ite][1]]);
}
« Modifié: mai 22, 2013, 09:16:03 am par marroon »
IP archivée

floor

  • Wisi tout neuf
  • *
  • Hors ligne Hors ligne
  • Messages: 27
    • Voir le profil
Re : Codes Javascript : liens ne tenant pas compte des espaces
« Réponse #6 le: mai 29, 2013, 10:28:42 am »

Bonjour, alors personne ne peut m'aider sur ce problème ?
Est-ce une question peu courante ?
c'est dommage on arrivait presque au bout, tout fonctionne sauf ça
 
IP archivée
 



Wisibility est un sité dédié à la formation aux métiers l’image. Vous y trouverez différentes ressources vous aidant à maîtriser les logiciels graphiques tels que Photoshop, Lightroom, Illustrator, InDesign, Flash… Aujourd’hui, Wisibility réunie plus d'une vingtaine d’experts, intervenant en Entreprise pour former graphistes, webdesigners, développeurs web, photographes, monteurs, trucistes…
Depuis 2006 nous nous sommes spécialisés dans les tutoriels vidéos permettant de se former à distance. Notre forum très actif, géré par une équipe de bénévoles répondra à vos demandes. Vous pourrez également profiter de nos émissions et reportages sur la Wisi TV.
Contact - Wisibility est une marque déposée

Blog - Tutoriels - Wisi TV - Forum