首先需要先引入兩個js
<script src="./jquery-3.4.1.min.js"></script>
<script src="./html2canvas.js"></script>
$('.btn').click(function () {
//#proMain:要截圖的DOM元素
//useCORS:true:解決跨域問題
html2canvas(document.querySelector('#proMain'),{useCORS:true}).then(function (canvas) {
//獲取年月日作為文件名
var timers=new Date();
var fullYear=timers.getFullYear();
var month=timers.getMonth()+1;
var date=timers.getDate();
var randoms=Math.random()+'';
//年月日加上隨機數
var numberFileName=fullYear+''+month+date+randoms.slice(3,10);
var imgData=canvas.toDataURL("image/png");
//保存圖片
var saveFile = function(data, filename){
var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
save_link.href = data;
save_link.download = filename;
var event = document.createEvent('MouseEvents');
event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
save_link.dispatchEvent(event);
};
//最終文件名+文件格式
var filename = numberFileName + '.png';
// 下載圖片(保存圖片)
// saveFile(imgData,filename);
// 把截的圖顯示在網頁上
var img = document.createElement('img');//創建一個標簽
img.setAttribute('src',imgData);//給標簽定義src鏈接
document.getElementById('box').appendChild(img);
})
})
// 代理事件(append之后的標簽無法設置事件)
$('#box').on('click',function (e) {
var target=e.target||e.srcElement;//獲取當前點擊的對象
console.log(target.src)
$('.bigImg').attr('src',target.src);
$('.bigImg').css('display','block')
});
截屏得到的是一個加密的base64地址
