<div id="1" class="aaa" style="position: relative; left: 50px; top: 50px; width: 300px; height: 200px; border: solid 1px; background: #dddddd; overflow: hidden;">
<div style="position: relative; left: 30px; top: 25px; width: 100px; height: 50px; background: blue;" onmouseenter="this.style.background='red';"></div>
<div style="position: relative; left: 160px; top: 70px; width: 100px; height: 50px; background: blue;" onmouseenter="this.style.background='orange';"></div>
</div>
<div id="2" class="bbb" style="position: relative; left: 250px; top: 100px; width: 50px; height: 20px; border: solid 1px; background: #cccccc; text-align: center; overflow: hidden;">click</div>
我有一个包含多个交互式 div 的 div (id="1" class="aaa")。此交互式内容的状态应该能够通过单击另一个 div (id="2" class="bbb") 呈现为图像 (gif?)。
该图像最好在新选项卡或窗口中打开。或者也许只是右键单击>另存为。
ps 我知道像 html2canvas 和 phantomjs 这样的脚本,但我不知道如何在我的情况下实现它们。
编辑:
现在我正在尝试实现这个解决方案,稍微调整一下应该可以与 processing.js 一起使用(http://cloud.github.com/downloads/processing-js/processing-js/processing-1.4.1.min。 js)。
我想我只需要带有 processing.js 的正确 jquery 代码来实现我需要的功能。我已经尝试过了,但它不起作用:
$('.bbb').click(function (e) {
var canvas = document.getElementById("1"),
img = canvas.toDataURL("image/png");
$('.aaa').document.write('<img src="'+img+'"/>');
});