Javascript js下载div并将meta附加到html
我使用下面的方法下载一个目标标签在我的网页作为一个html文件Javascript js下载div并将meta附加到html,javascript,html,Javascript,Html,我使用下面的方法下载一个目标标签在我的网页作为一个html文件 function downloadInnerHtml(filename, elId, mimeType) { var elHtml = document.getElementById(elId).innerHTML; if (navigator.msSaveBlob) { // IE 10+ navigator.msSaveBlob(new Blob([elHtml], { type: mimeTy
function downloadInnerHtml(filename, elId, mimeType) {
var elHtml = document.getElementById(elId).innerHTML;
if (navigator.msSaveBlob) { // IE 10+
navigator.msSaveBlob(new Blob([elHtml], { type: mimeType + ';charset=utf-8;' }), filename);
} else {
var link = document.createElement('a');
mimeType = mimeType || 'text/plain';
link.setAttribute('download', filename);
link.setAttribute('href', 'data:' + mimeType + ';charset=utf-8,' + encodeURIComponent(elHtml));
var metaTag=document.createElement("meta");
metaTag.name = "viewport";
metaTag.content = "width=device-width, initial-scale=1.0, maximum-scale=1.0";
document.head.appendChild(metaTag);
document.body.append(link);
link.click();
document.body.removeChild(link);
}
}
我面临的问题是,创建的输出html不包含meta标记。,因为您只下载
elHtml
或encodeURIComponent(elHtml)
你需要做什么
var elHtml = document.getElementById(elId).innerHTML;
elHtml = `<meta..... >`+ elHtml;
var elHtml=document.getElementById(elId).innerHTML;
elHtml=``+elHtml;