Bonjour,
Je souhaite pouvoir ajouter un widget netvibes sur ma page web. J'ai trouvé des infos sur Google, mais ça n'a pas vraiment résolu mon problème. J'ai fais quelques tests avec des alert() un peu partout mais rien n'y fait...
fichier html
fichier javascript
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 <?xml version="1.0" encoding="utf-8"?> <!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" > <head> <title>ajout application</title> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <link rel="stylesheet" type="text/css" href="styles.css" /> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery.impromptu.js"></script> <script type="text/javascript" src="ajout_application.js"></script> </head> <body> <ul id="menu"> <li><a href="#" id="lienAjoutContenu">Ajouter du contenu</a></li> <li><a href="#" id="cacheLienAjoutContenu"><img src="close.png" alt="Masquer le menu"/></a></li> </ul> <ul id="ajoutContenu"> <li><a href="javascript:;" onclick="ajoutFlux();">Ajouter un flux</a></li> <li><a href="javascript:;" onclick="ajoutWidget();">Ajouter un widget</a></li> </ul> <div id="contenu"></div> </body> </html>
Le soucis se situe dans maFonctionAjoutWidget(). Mon premier alert montre que je récupère bien ce que je veux :
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 function ajoutWidget(){ var txt = '<div class="field">' + '<p>Ajouter un widget</p>'+ '<label for="champ_ajoutWidget">Script :</label><br/>'+ '<textarea type="text" id="champ_ajoutWidget" name="champ_ajoutWidget"/>'+ '</div>'; $.prompt(txt,{ buttons:{Ok:true, Cancel:false}, submit: maFonctionAjoutWidget // fonction appelée quand le prompt est validé (true) }); } function maFonctionAjoutWidget() { var html= $("#champ_ajoutWidget").attr("value"); // alert(html); //$('#contenu').append('<script>alert("test");</script>'); $('#contenu').append(html); } $(document).ready(function() { $("#ajoutContenu > *").hide(); // masque tous les éléments enfants du menu d'id "ajoutContenu" au chargement de la page $("#lienAjoutContenu").click(function(){ // si on clique sur le lien "Ajouter du contenu" $("#ajoutContenu > *").show(); // affiche le menu d'id "ajoutContenu" }); $('#cacheLienAjoutContenu').click(function(){ // si on clique sur la croix $("#ajoutContenu > *").hide(); // masque le menu d'id "ajoutContenu" }); });
Le second me montre que les balises script fonctionne dans le append.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <script type="text/javascript" src="http://www.netvibes.com/js/UWA/load.js.php?env=BlogWidget2"></script> <script type="text/javascript"> var BW = new UWA.BlogWidget({moduleUrl:'http://www.parisavelo.net/netvibes.php'}); BW.setConfiguration({'title':'Stations Vélib à Paris', 'height':178}); </script>
Et le dernier (sensé ajouté le widget dans une div) fait tout planter la page ^^
Est ce un problème d'interprétation de simple quote ou double quote ? J'ai testé directement le script dans le append mais cela ne fonctionne pas non plus...
J'espère que vous situer le problème et que vous pourrez me débloquer ^^
Merci d'avance : )
Partager