 <p>With EaselJS, you can use the <code>nextStage</code> property to pass CreateJS mouse interactions to canvases that are below one another in the DOM.</p> <pre><code>// Overlapping Canvases &lt;canvas id="canvas1"&gt;&lt;/canvas&gt; &lt;canvas id="canvas2"&gt;&lt;/canvas&gt; // Multiple Stages stage1 = new createjs.Stage("canvas1"), stage2 = new createjs.Stage("canvas2"); // Mouse events on content in each stage stage1child.on("click", handleClick); stage2child.on("click", handleClick); // Stage 2 is higher in the DOM, so it will receive the mouse events first. // Pass them on to the lower canvas/stage stage2.nextStage = stage1; </code></pre> <p>Here is more info:</p> <ul> <li><a href="http://www.createjs.com/docs/easeljs/classes/Stage.html#property_nextStage" rel="nofollow noreferrer">nextStage documentation</a></li> <li><a href="https://github.com/CreateJS/EaselJS/blob/master/examples/TwoStages.html" rel="nofollow noreferrer">TwoStages demo in GitHub</a></li> <li><a href="http://www.createjs.com/demos/easeljs/twostages" rel="nofollow noreferrer">TwoStages demo on createjs.com</a></li> </ul>