A simple demo showing the information d3.touches stores in its array for Chapter 12 of D3.js in Action.
forked from emeeks's block: d3.touches array data on touch
license: mit |
A simple demo showing the information d3.touches stores in its array for Chapter 12 of D3.js in Action.
forked from emeeks's block: d3.touches array data on touch
<html xmlns="http://www.w3.org/1999/xhtml"> | |
<head> | |
<title>D3 Touch 1</title> | |
<meta charset="utf-8" /> | |
</head> | |
<script src="http://d3js.org/d3.v3.min.js"></script> | |
<style> | |
body, html { | |
width:100%; | |
height:100%; | |
} | |
#vizcontainer { | |
width:100%; | |
height:100%; | |
} | |
svg { | |
width: 100%; | |
height: 100%; | |
} | |
#buttons { | |
width: 100%; | |
height: 100%; | |
position: fixed; | |
z-index: 1; | |
top: 0; | |
} | |
</style> | |
<body onload="touchDemo1()"> | |
<div id="vizcontainer"> | |
<svg></svg> | |
<div id="buttons"> | |
</div> | |
</div> | |
<footer> | |
<script> | |
function touchDemo1() { | |
d3.select("#buttons").html("") | |
.style("pointer-events", "none") | |
.append("div").attr("id", "touchStatus") | |
.append("ol") | |
.append("li"); | |
d3.select("svg").on("touchstart", touchStatus); | |
d3.select("svg").on("touchmove", touchStatus); | |
function touchStatus() { | |
d3.event.preventDefault(); | |
d3.event.stopPropagation(); | |
d = d3.touches(this); | |
d3.select("#touchStatus") | |
.select("ol") | |
.selectAll("li") | |
.data(d) | |
.enter() | |
.append("li"); // only for 1st 2 please | |
d3.select("#touchStatus") | |
.select("ol") | |
.selectAll("li") | |
.data(d) | |
.exit() | |
.remove(); | |
d3.select("#touchStatus") | |
.select("ol") | |
.selectAll("li") | |
.html(function(d,i) { | |
if (i<2) return d}); // now | |
} | |
} | |
</script> | |
</footer> | |
</body> | |
</html> |