je revien vous voir
le problème ce déplace c'est la dernière ligne droite et je suis entrain de le mettre en joux pour le coup fatal
voilà le code que j'ai pondu
comment pourrai-je résoudre ça ?
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 // récupération des scripts var mesScripts = document.getElementById(this.idFillObj).getElementsByTagName("script"); // pour chaque script for (var i=0; i<mesScripts.length; i++) { // on initialise la variable qui va récupérer les scripts traités var script = ""; // si il y a des fonctions à instancier if(mesScripts[i].innerHTML.search(/(?:function)\s(.*)\)/gi) != -1){ // on enregistre le script pour le modifier plus tard script = mesScripts[i].innerHTML; // on récupère les entêtes des fonctions var entetesFonctions = mesScripts[i].innerHTML.match(/(?:function)\s(.*)\)/gi); // on initialise la variable qui va stocker les nouvelles entêtes var entete = ""; // pour chaque entête for( var j = 0; j < entetesFonctions.length; j++){ // on récupère le nom de la fonction // on commence par enlever se qu'il y a devant le nom entete = entetesFonctions[j].replace(/(?:function)\s*/gi, ""); // ensuite on enlève se qu'il y a après et on le stock dans // nomFonction nomFonction = entete.replace(/\(.*\)/gi, ""); // puis on récupère les paramètres eventuels de la fonction params = entete.replace(/(?:.*\()|\)/gi, ""); // on reconstruit l'entête pour que la fonction // soit instenciée correctement entete = "window['"+nomFonction+"'] = function ("+params+")"; // création du model de l'entête de fonction à rechercher // selon le nom de la fonction pattern = new RegExp("(?:function)\s*"+nomFonction+"\(.*\)","gi"); // ^== PROBLEME CA MARCHE PAS // apparament il aime pas le \( et le \) alert (script.match(pattern)); // remplacement de l'entête dans le script à évaluer script = script.replace(pattern, entete); //alert(script); } }else{ script = mesScripts[i].innerHTML; } //eval(script); }
Partager