d3.sélectionnez(“#element”) ne fonctionne pas lorsque le code au-dessus de l'élément html

Cela fonctionne:

<div id="chart"></div>
<script>var svg = d3.select("#chart").append("svg:svg");</script>

Ce n'est pas le cas:

<script>var svg = d3.select("#chart").append("svg:svg");</script>
<div id="chart"></div>

J'ai essayé d'emballage le code jquery document.ready(), en saisissant l'élément avec jquery, et en passant en d3.sélectionnez, mais cela ne fonctionne pas non plus. Modifier une Fois que j'ai eu l'jquery document.prêt() syntaxe droit, il a travaillé.

Toute façon je peux inclure du javascript dans le haut de la page, et encore sélectionner un élément ci-dessous? Merci.

  • Solution facile, mais d'une question délicate que l'on pourrait facilement oublier. Comme l'écrit le plus voté solution. Soyez prudent au sujet de jouer avec les éléments dom, avant qu'ils sont en train d'être créé. En d'autres mots, avant qu'ils existent dans le dortoir de la hiérarchie. Pour charger le script après l'élément par le nom de char ID.
InformationsquelleAutor Rick Jolly | 2013-05-29