HTML2Canvas 不渲染完整的 div,仅渲染屏幕上可见的内容

2024-04-15

我正在尝试使用HTML2画布 https://github.com/niklasvh/html2canvas渲染 div 的内容。这是代码:

var htmlSource = $('#potenzial-page')[0];
    
$('#btn').on("click", function() {          
    
    html2canvas(htmlSource).then(function(canvas) {
        var img = canvas.toDataURL();
        window.open(img);
    });

});

我正在使用 v5 beta 3。

当此代码运行时,它仅呈现屏幕上可见的内容。这#potenzial-pagediv 本质上是整个页面,减去页眉和页脚。该 div 中的所有内容都可以通过滚动看到(有一些隐藏元素,但我不希望隐藏元素在图像中可见。)

我找不到问题所在或者为什么它不能保存整个 div。我还应该注意到,图像似乎与 div 一样高,但仅部分可见。

为了说明我的意思,下面是一个比较:

左边是 HTML2Canvas 应该如何渲染 div。右侧显示了运行上面的代码时的呈现方式。正确的图像是我的浏览器屏幕中可见的图像。

我确实尝试添加height选项,但没有什么区别。

如果我滚动到页面的最顶部then运行脚本,它会按预期渲染整个 div。

如何渲染 div 而无需滚动到顶部?


我希望这可以帮助你:

html2canvas(htmlSource, {scrollY: -window.scrollY})
    .then(function(canvas) {
        var img = canvas.toDataURL();
        window.open(img);
    });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML2Canvas 不渲染完整的 div,仅渲染屏幕上可见的内容 的相关文章

随机推荐

  • jqGrid treeGrid 捕获展开折叠事件

    我使用 jqGrid 来构建一些大树 现在我想记住cookie中展开和折叠的节点 所以我想捕捉展开和折叠事件 我在手册中找不到它 所以我用这种方式解决了 grid find div treeclick bind click function
  • PRY 或 IRB - 重新加载类并忘记已删除的功能

    如果您更改文件然后在 pry 或 irb 中重新加载它 它似乎会拾取您添加到该类中的任何新功能 但不会忘记您从该类中删除的旧功能 重现步骤 使用单一方法创建一个类 例如 say hello 打开 PRY 或 IRB 并且load my cl
  • 使用 $.html() 时如何提高渲染性能

    我正在研究骨干demo app https jsfiddle net o75r7fu9 8 显示推文列表 当我用不同的数据替换所有 推文 时 我使用以下命令清除列表 html render function item table html
  • 如何将powershell UTC日期时间对象转换为EST

    我收到了日期时间字符串 格式如下 2017 08 03T12 30 00 000Z 我需要能够将它们转换为 EST 我尝试过的每个函数都会抛出一个或另一个错误 通常是 String was not recognized as a valid
  • translate3d() 导致 jQuery 悬停/单击事件无法正确触发

    在分析不同 CSS 动画类型上的 jQuery 鼠标事件时 我注意到 translate3d 会导致悬停和其他事件无法正确触发 在一个基本示例中 我从右到左对块列表进行动画处理 翻转时 我将悬停的 LI 背景设置为绿色 注意 测试是为 we
  • 实时音高检测

    用于实时检测用户歌唱的音调FFT https stackoverflow com questions 1351381 fft problem returns random results and 自相关 https stackoverflo
  • 为什么不能使用“new”运算符创建泛型类型的实例?

    我发现了很多关于how克服这个限制 但没有说明为什么存在这个限制 除了this one https stackoverflow com questions 75175 create instance of generic type in j
  • 为什么我不应该为 React 和 babel 使用 CDN?

    当我学习 jQuery 和 Bootstrap 时 我们 我的学习 Web 框架的菜鸟同胞 被告知 CDN 有很多好处等等 现在我正在涉足 React Babel 我们被告知应该从我们的主机服务器下载文件并准备好一切 但我们仍然能够使用 C
  • int[] 数组和 int array[] 之间的区别

    最近一直在思考两种定义数组方式的区别 int array int array 有区别吗 它们在语义上是相同的 这int array 添加语法只是为了帮助 C 程序员习惯 java int array更可取 并且更不易混淆
  • 如何重构代码以在主线程上调用 AppDelegate?

    我最近开始将我的项目从 Swift 3 Xcode 迁移到 Swift 4 Xcode 我的应用程序在运行时崩溃 因为主线程清理程序允许访问UIApplication shared delegate仅在主线程上 导致启动时崩溃 我有以下代码
  • youtube 视频作为网站背景

    有没有办法将 youtube 视频嵌入到带有 html css 和 javascript 的网页背景中 并将实际网站内容放在顶部 如何 基本上 它应该是一个自动播放 静音的视频 但访问者可以调高音量 并且该网站应该在其之上运行良好 该网站很
  • 来自直播流的语音到文本[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个 Java 应用程序 我想要转录的不是一个文件 而是一个由 Wowza 提供的实时流 rtmp
  • 如何定位除悬停在 div 上之外的同一类的所有 div?

    我有一组 div 都具有相同的类 如果可以使这更容易 它们不必具有相同的类 理想情况下 我想要的是 当用户将鼠标悬停在这些 div 之一上时 其他 div 每个都有背景图像 全部变成灰色 以将焦点放在当前悬停的 div 上 如果是悬停在上面
  • 在两个或多个窗口之间拖放 QDockWidget

    我想知道是否有人知道是否可以拖动QDockWidget http doc qt nokia com latest qdockwidget html从一个窗口到另一个窗口 我正在开发一个有很多窗口的应用程序 每个窗口都有特定的用途 我想使用
  • 使用 OpenXML 打开点文件

    我需要打开一个 DOT word 文档模板 文件 替换填充符并将其另存为文档文件 打开 DOT 文件时 我收到 文档文件已损坏 是否可以使用 OpenXML 处理 DOT 文件 UPDATE 我正在将 DOT 文件另存为 XML 手动使用
  • 如何在 emacs 中以 info 模式打开 *.info 文件?

    C x C f blah info以基础金属模式打开文件 我用过apropos并发现Info mode我认为这可能会从基本模式更改为信息模式 但这会引发 lisp 错误 如何在 emacs 中打开外部 第三方 info 文件 以便获得与查看
  • 在旋转排序数组中搜索数字

    给定一个可以旋转的排序数组 以最小的时间复杂度在其中找到一个元素 例如 数组内容可以是 8 1 2 3 4 5 假设您在其中搜索 8 该解决方案仍然适用于二分搜索 因为您需要将数组划分为要检查的两个部分 在排序数组中 您只需查看每个部分并确
  • Elm 组件和视图:什么时候应该使用 `Html msg` 以及什么时候应该使用 `Html Msg`

    我正在做一个项目 我和我的队友正在讨论哪种方法更好 在我看来Html msg似乎更通用 所以我认为我们应该尽可能使用它 但除此之外我不能给他其他理由 另外 我来自 React 和 Redux 对我来说看起来像是带有签名的组件Html Msg
  • Angular:在/src/app/app-routing.module.ts中找不到路由声明

    当我尝试为使用以下命令生成的组件添加自动路由时 ng generate module orders route orders module app module 我收到错误 Couldn t find a route declaration
  • HTML2Canvas 不渲染完整的 div,仅渲染屏幕上可见的内容

    我正在尝试使用HTML2画布 https github com niklasvh html2canvas渲染 div 的内容 这是代码 var htmlSource potenzial page 0 btn on click functio