我想从像游戏徽章这样的div制作徽章,我通过点击按钮将html2canvas保存到我的服务器,我怎么想要它所以每次我都不需要按下按钮想要更新的图像。
我使用的脚本是
function capture() {
$('#box').html2canvas({
onrendered: function (canvas) {
$('#img_val').val(canvas.toDataURL("image/png"));
document.getElementById("myForm").submit();
}
});
}
保存页面为:
<?php
//Get the base-64 string from data
$filteredData=substr($_POST['img_val'], strpos($_POST['img_val'], ",")+1);
//Decode the string
$unencodedData=base64_decode($filteredData);
//Save the image
file_put_contents('img.png', $unencodedData);
?>
<h2>Save the image and show to user</h2>
<table>
<tr>
<td>
<a href="img.png" target="blank">
Click Here to See The Image Saved to Server</a>
</td>
<td align="right">
<a href="index.php">
Click Here to Go Back</a>
</td>
</tr>
<tr>
<td colspan="2">
<br />
<br />
<span>
Here is Client-sided image:
</span>
<br />
<?php
//Show the image
echo '<img src="'.$_POST['img_val'].'" />';
?>
那么无论如何都要将div保存到每x分钟一次?
答案 0 :(得分:0)
您可以将捕获函数传递给setInterval函数,该函数接收以毫秒为单位的间隔作为第二个参数。
function capture() {
$('#box').html2canvas({
onrendered: function (canvas) {
$('#img_val').val(canvas.toDataURL("image/png"));
document.getElementById("myForm").submit();
}
});
}
setInterval(capture, 2000);
这将每2秒调用一次捕获功能。