2017-03-15 2 views
0

Sur la base de cet exemple: http://bl.ocks.org/jfreels/6734245Ajout d'un menu déroulant dans la force de mise en page (d3.js)

Quand j'utilise un code qui contient cette ligne unique d3.js,:

<script> 
var select = d3.select('body').append('select') 
</script> 

Puis un menu déroulant vide dans le coin supérieur gauche de l'écran apparaît. Donc mon plan était de copier et coller le menu déroulant dans une mise en page force-directe basée sur cet exemple: https://bl.ocks.org/mbostock/4062045

Mais malheureusement, cela n'a pas fonctionné. Est-ce parce que j'utilise d3.select('body') pour créer le menu déroulant?

+0

Pourriez-vous inclure ce qui ne fonctionne pas? – rasmeister

+0

Ouais, le menu déroulant n'apparaissait pas. –

Répondre

1

Oui.

Cela fonctionne parfaitement bien lorsque vous ajoutez la balise <body>.

Votre code ressemblerait à quelque chose comme (à l'exception des scripts, et le style):

<!DOCTYPE html> 
<meta charset="utf-8"> 
<script src="https://d3js.org/d3.v4.min.js"></script> 
<body> 
    <svg width="960" height="600"></svg> 
    <script type='text/javascript' src='script.js'></script> 
</body> 

Assurez-vous que le fichier a script.js dans le bon répertoire. Sinon copiez le code dans un tag <script> </script>. Je ne peux pas le recommander cependant.

+0

Merci, à quoi sert ce 'src = 'script.js''? –

+0

Je ne sais pas si je fais les choses correctement, mais je pense que votre conseil ne fonctionne pas. –

+0

Dans les blocs, le script utilisateur s'appelle script.js. Stockez le script dans un fichier sous le nom script.js et vous obtiendrez votre résultat. Ou que j'écris le mettre dans une étiquette de script. Il semble que vous ayez des questions TRES fondamentales ici. vous devriez probablement prendre un tutoriel d'introduction en javascript ou d3 javascript. Jetez un oeil à ce d3 - il est actuellement gratuit: http://chimera.labs.oreilly.com/books/1230000000345 – MadsVJ