我看了看html2canvas.js,看到如下:
_html2canvas.Parse = function (images, options) {
window.scroll(0,0);
在评论了window.scroll(0,0)之后,在本地测试中对我很好.似乎这样的行为是作者的意图.
当然,您也可以在触发代码时将当前的滚动位置保存为变量.你可以这样做的方式取决于你如何执行html2canvas.如果它是一个像演示页面上的按钮,你可以添加一个事件监听器到该按钮:
var scrollPos;
document.querySelector("screenshotButton").addEventListener("click",function() {
scrollPos = document.body.scrollTop;
html2canvas(document.body, {
onrendered: function(canvas) {
document.body.appendChild(canvas);
window.scrollTo(0,scrollPos);
}
});
});