在函数末尾重新加载 css
reload css at the end of a function
我试图在我的 "print" 函数结束时仅重新加载我页面的 CSS,但我找不到任何有效的东西。
我试过 location.reload ();但这会完全重新加载页面。
你有想法吗?
function print() {
const filename = 'File.pdf';
html2canvas(document.querySelector('#print')).then(canvas => {
let pdf = new jsPDF('p', 'mm', 'a4');
pdf.addImage(canvas.toDataURL('image/jpeg'), 'JPEG', 0, 0, 211, 298);
pdf.save(filename);
});
location.reload ();
}
+这里有两个重新加载 css 文件的选项。在您的 print() 函数中删除 location.reload()。请参阅下面添加的代码。
function print() {
const filename = 'File.pdf';
html2canvas(document.querySelector('#print')).then(canvas => {
let pdf = new jsPDF('p', 'mm', 'a4');
pdf.addImage(canvas.toDataURL('image/jpeg'), 'JPEG', 0, 0, 211, 298);
pdf.save(filename);
});
// insert your css filename in place of style.css
document.querySelector('head').innerHTML +=
'<link rel="stylesheet" href="style.css?' +
new Date().getTime() + // add the date string to avoid caching
'">';
}
另一种方法是动态创建样式 link。
// insert your css filename in place of style.css
var css = document.createElement("link");
css.setAttribute("rel", "stylesheet");
css.setAttribute("type", "text/css");
css.setAttribute("href", "style.css?" + new Date().getTime());
document.getElementsByTagName("head")[0].appendChild(css);
希望对您有所帮助。
我试图在我的 "print" 函数结束时仅重新加载我页面的 CSS,但我找不到任何有效的东西。
我试过 location.reload ();但这会完全重新加载页面。
你有想法吗?
function print() {
const filename = 'File.pdf';
html2canvas(document.querySelector('#print')).then(canvas => {
let pdf = new jsPDF('p', 'mm', 'a4');
pdf.addImage(canvas.toDataURL('image/jpeg'), 'JPEG', 0, 0, 211, 298);
pdf.save(filename);
});
location.reload ();
}
+这里有两个重新加载 css 文件的选项。在您的 print() 函数中删除 location.reload()。请参阅下面添加的代码。
function print() {
const filename = 'File.pdf';
html2canvas(document.querySelector('#print')).then(canvas => {
let pdf = new jsPDF('p', 'mm', 'a4');
pdf.addImage(canvas.toDataURL('image/jpeg'), 'JPEG', 0, 0, 211, 298);
pdf.save(filename);
});
// insert your css filename in place of style.css
document.querySelector('head').innerHTML +=
'<link rel="stylesheet" href="style.css?' +
new Date().getTime() + // add the date string to avoid caching
'">';
}
另一种方法是动态创建样式 link。
// insert your css filename in place of style.css
var css = document.createElement("link");
css.setAttribute("rel", "stylesheet");
css.setAttribute("type", "text/css");
css.setAttribute("href", "style.css?" + new Date().getTime());
document.getElementsByTagName("head")[0].appendChild(css);
希望对您有所帮助。