功能:html
點擊下載按鈕 須要將某塊區域的html頁面生成截圖並保存到本地,跨域
其中可能會遇到 圖片跟文字 結合的網頁 ,這塊在開發的過程當中 文字跟背景色都沒問題 ,可是若是是遇到漸變背景色或者是頁面中的圖片時候,就會展現不出來背景色以及圖片,百度一搜 說是圖片須要跨域 ,這塊目前解決了,有個地方須要注意下 默認的是 $("body"),若是直接寫須要下載的div的類名時候,是不起效的,須要在body後邊添加上類名 ,就起效了 ,html2Canvas須要修改下源碼,而後就能夠實現圖片跨域了 無需服務器配置容許跨域 , promise
跨域問題源碼修改:服務器
function ImageContainer(src, cors) {
this.src = src;
this.image = new Image();
var self = this;
this.tainted = null;
this.promise = new Promise(function(resolve, reject) {
self.image.onload = resolve;
self.image.onerror = reject;
//解決圖片跨域的問題
console.log(self)
if (cors) {
self.image.crossOrigin = "";
}
self.image.src = src+"?"+new Date().getTime();
if (self.image.complete === true) {
resolve(self.image);
}
});
}