Built with blockbuilder.org
forked from ideaOwl's block: D3 Workshop: Part 1 - Basic HTML, d3, and Data Binding
forked from MandyMeindersma's block: D3 Workshop: Part 1 - Basic HTML, d3, and Data Binding
| license: mit |
Built with blockbuilder.org
forked from ideaOwl's block: D3 Workshop: Part 1 - Basic HTML, d3, and Data Binding
forked from MandyMeindersma's block: D3 Workshop: Part 1 - Basic HTML, d3, and Data Binding
| <!DOCTYPE html> | |
| <head> | |
| <meta charset="utf-8"> | |
| <script src="https://d3js.org/d3.v4.min.js"></script> | |
| </head> | |
| <body> | |
| <script> | |
| function runCode(){ | |
| alert("helo!"); | |
| d3.selectAll(".standard").style("font-size", "40px").text("hack"); | |
| var myData = ["hello 1","hello 2"]; | |
| d3.selectAll('p.new') | |
| .data(myData) | |
| .enter() | |
| .append('p') | |
| .classed("new",true) | |
| .text(function(d){return d}) | |
| .on("click", function(d) { | |
| console.log("thing") | |
| }); | |
| d3.selectAll("input") | |
| .property("checked", true) | |
| }; | |
| </script> | |
| <input type="button" | |
| value="Run d3 code" | |
| onclick="runCode()"/> | |
| <div id="sandbox"> | |
| <p class="standard">Para 1</p> | |
| <p class="standard">Para 2</p> | |
| <p class="standard">Para 1</p> | |
| <p class="standard">Para 2</p> | |
| </div> | |
| <!-- ---------------------------------------------------------- --> | |
| <!-- ---------------------------------------------------------- --> | |
| <!-- Ignore this text below, it's not relevant for the exercise --> | |
| <!-- ---------------------------------------------------------- --> | |
| <!-- ---------------------------------------------------------- --> | |
| <p class="exercise"> | |
| <hr/> | |
| <h3>Exercise:</h3> | |
| <ul> | |
| <li>Part 1</li> | |
| <ol> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Add Para 3 and Para 4 Manually</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Debug the issue with the button</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Make the text larger</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Change the text</span> | |
| </label> | |
| </li> | |
| </ol> | |
| <li>Part 2</li> | |
| <ol> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Add an array of two pieces of text, name it "myData"</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Append the data as new paragraphs</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Class the paragraph</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">console.log('Hello!') on new paragraph click</span> | |
| </label> | |
| </li> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Change the text on click</span> | |
| </label> | |
| </li> | |
| </ol> | |
| <li>Part 3: You're done!</li> | |
| <ol> | |
| <li> | |
| <label> | |
| <input type="checkbox"/> | |
| <span class="exercise">Check everything off using d3 on clicking button</span> | |
| </label> | |
| </li> | |
| </ol> | |
| </ul> | |
| </p> | |
| <style> | |
| body { | |
| margin: 20px; | |
| } | |
| ul > li { | |
| font-weight: bold; | |
| margin: 5px 0px; | |
| } | |
| ol li { | |
| font-weight: normal; | |
| margin-bottom: 0px; | |
| } | |
| ol li label { | |
| cursor: pointer; | |
| } | |
| input:checked~.exercise { | |
| text-decoration: line-through; | |
| } | |
| </style> | |
| </body> |