我希望通过单击按钮来下载HTML文件中的某些内容,并且我发现一些可以在初始测试中运行的代码,但是当我将其实现到我的网站时,我发现下载的文件仅包含一小部分要下载的内容中的一个。
我使用的方法是否存在某种限制,如果存在,下载更大大小文件的过程是什么?
请参阅下面的当前方法。我已经省略了点击事件,因为那很好。
let openingCode = $('.openingCode').text().trim()
let bodyCode = $('.emailContent').html().trim()
let closingCode = $('.closingCode').text().trim()
let contentToCopy = openingCode + bodyCode + closingCode
console.log(contentToCopy)
let downloadName = $('.fileNameText').val()
var a = document.body.appendChild(
document.createElement("a")
);
a.download = downloadName + ".html";
a.href = "data:text/html," + contentToCopy;
a.click();
更新
按照下面的建议,我已更改代码以使用blob代替。我努力地遵循所提供的示例,以便找到其他一些使用blob下载html文件的人的示例,并对我的代码进行了一些更改。但是,我下载的文件仍在内容的同一位置结束。
下面的新代码
var a = document.body.appendChild(
document.createElement("a")
);
var blob = new Blob([contentToCopy], {type: "text/html"});
var url = URL.createObjectURL(blob);
a.href = url
a.download = downloadName + ".html";
a.click();
更新2
我的上述更新是菜鸟错误!我正在查看的是我上次部署的版本,而不是最新的本地版本!
使用Blob有效!