如何通过单击按钮打印 HTML 内容而不是页面? [复制]

2023-12-04

我想在用户单击按钮时打印一些 HTML 内容。一旦用户单击该按钮,浏览器的打印对话框将打开,但不会打印网页。相反,它会打印页面上未显示的其他一些 HTML 内容。

在问这个问题时,我脑子里几乎没有解决方案。但我不确定这些是好主意还是可以做更好的事情。这些解决方案之一是: 我可以将此 HTML 内容保存在 div 中并使其display:打印,但是display: none向屏幕。网页上的所有其他元素都可以display: none用于打印和display:对于屏幕。然后调用打印。

还有更好的主意吗?


@media print {
  .noPrint{
    display:none;
  }
}
h1{
  color:#f6f6;
}
<h1>
print me
</h1>
<h1 class="noPrint">
no print
</h1>
<button onclick="window.print();" class="noPrint">
Print Me
</button>

我遇到了另一个优雅的解决方案:

将可打印部分放入具有如下 id 的 div 中:

<div id="printableArea">
      <h1>Print me</h1>
</div>

<input type="button" onclick="printDiv('printableArea')" value="print a div!" />

现在让我们创建一个非常简单的 JavaScript:

function printDiv(divName) {
     var printContents = document.getElementById(divName).innerHTML;
     var originalContents = document.body.innerHTML;

     document.body.innerHTML = printContents;

     window.print();

     document.body.innerHTML = originalContents;
}

来源 :所以答案

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何通过单击按钮打印 HTML 内容而不是页面? [复制] 的相关文章

  • 如何使用CSS缩放图像以填充div并保持纵横比?

    我想用一个 div 填充img 保持纵横比并根据需要拉伸宽度或高度以适应 div style width 80px height 80px img src div 我怎样才能实现它 如果图像不是二次方的 则必须将其 放大 并根据哪一侧较大而
  • 对其中一个具有相同 tabindex 的焦点的所有元素应用相同的效果

    在我的上一篇文章中 我问了如何通过 css 选择器使不可聚焦的元素变得可聚焦 答案是使用tabindex 现在我希望 当具有选择器的元素获得焦点 单击 时 选择器选择的另一个元素也能获得效果 这可能听起来很奇怪 但我很久以前就可以不小心这样
  • 正则表达式中连字符的这种用法有效吗?

    NB I only想知道它是否是正则表达式定义中未转义连字符的有效应用 它是not关于匹配电子邮件 连字符或反斜杠的含义 量词或其他任何内容的问题 另外 请注意 链接的答案并没有真正讨论转义 未转义连字符之间的有效性问题 通常我会像这样声明
  • 使用javascript以编程方式触发iOS safari中的复制菜单?

    我正在尝试实现一种用户友好的方式 将一些文本从文本输入字段复制到 iOS Safari 上的剪贴板 我知道无法在这个平台上以编程方式完成此操作 但我希望能够尽可能地指导用户体验 在 iOS Safari 上 当用户手动突出显示某些文本时 会
  • 通过 JavaScript 单击按钮/页面提交

    我想了解 asp net 框架如何知道何时单击了按钮 因此一旦收到请求 就会在服务器上触发其单击事件 我需要了解它是如何工作的 因为我想从 JavaScript 触发按钮的服务器单击事件 我能够从 JavaScript 执行页面提交 doc
  • Bootstrap 4 移动导航栏消失

    我刚刚从 Bootstrap 3 转换为 Bootstrap 4 但我的移动导航栏出现问题 使用切换按钮展开导航栏时 导航消失 我不明白为什么会发生这种情况 导航栏下方有一个大屏幕 但整个移动导航向上移动 如下面的 gif 所示 以下是导航
  • AngularJS + jQuery 移动

    是否还有其他可能性来设计AngularJS以移动友好的方式应用程序CSS 我正在计划一个移动应用程序 并希望使用 AngularJS 进行逻辑和数据绑定 但我不想自己设计所有内容CSS The AngularJSFAQ说它使用jQuery
  • 可以禁用幻灯片的触摸模拟但不能禁用滚动条(危险的滑动器)吗?

    我的页面上有一个危险的滑动器 它成功地模拟了幻灯片和随附滚动条上的触摸事件 允许单击鼠标并移动以向左或向右滑动幻灯片 这很好 但我现在在滑动器内的幻灯片上调用了可拖动 这意味着我需要停止此触摸模拟 拖动幻灯片并同时移动它们会引起混乱 但仅限
  • 如何从 html 页面 [javascript] 调用 Web 服务方法而不刷新页面

    我有一个webservice这将返回一个值 我的要求是 我需要调用它webservice从一个index html页面 该页面有一个 html 提交按钮 在该按钮上单击我正在呼叫JavaScript 从那里我想调用网络方法 我怎样才能做到这
  • HTML5 文件 API 和 AJAX 上传分块问题

    我编写了一个带有单独进度的拖放多个文件上传等 除了一件事之外 它工作得非常好 上传较大文件时 有时浏览器会锁定 直到上传完成 我认为这是因为该文件存储在浏览器的内存中并占用了浏览器可用的所有资源 我想知道 是否可以逐段读取文件并在读取时通过
  • 如何在html中定义条件换行符?

    我希望这根绳子断在 如果需要的话 没有地方可以写了 7 380 Ft 159 Ft term kd jjal like 7 380 000 Ft 159 125 Ft term kd jjal 如何在html中实现这一点 nbsp 产生 错
  • node.js 模块/导出系统:是否可以将模块导出为函数

    我想在 Dispatch js 中做这样的事情 function handle msg exports handle 这在调用index js中 var dispatch require Dispatch dispatch data 有任何
  • Svelte 条件元素类报告为语法错误

    我正在做一个if块每if 块的精简指南 https svelte technology guide if blocks 这看起来很简单 但 Svelte 认为这是一个语法错误 svelte plugin ParseError Unexpec
  • Firebase + Node.js:错误:找不到 XMLHttpRequest 兼容性库

    Firebase Node js On iOS 安装的 Node js npm 安装 firebase save 节点测试 js 其中 test js 是一个非常简单的连接到 Firebase 的脚本 var firebase requir
  • 禁用复选框上的输入

    需要在取消选中该复选框时禁用输入 并在选中该复选框时启用它 我的代码是这样的 div class y div
  • WordPress 子主题包括包含文件

    我在一家WordPress使用 AMPPS 作为本地主机在我的本地计算机上进行设置 使用 Delta 主题 我创建了一个子主题 delta2 child 初始设置效果很好 但是 我需要更改包含文件夹中名为 home slider php 的
  • 如何将MathJax公式转换为img

    Mathjax 现在在我的项目中运行良好 但有一个问题 有没有办法将MathJax的公式 纯html和css 转换成img文件 我可以保存 MathJax 可以配置为生成 SVG 看http docs mathjax org en late
  • Graphql 将多个查询合并(组合)为一个?

    我正在尝试使用 JavaScript 将多个 GraphQL 查询合并为一个查询 我正在寻找这样的东西 let query3 mergeQueries query1 query2 我们事先不知道哪些查询将被组合 假设我有这样的查询 输入查询
  • jQuery Mobile + Admob:轮换?

    我使用 jQuery Mobile 框架创建了一个移动应用程序 所有页面都在index php中加载 使用 div 在每个页面的页脚中 我添加了Admob代码 div div div
  • 将引导程序弹出框保留在视口内

    我正在尝试使用带有按钮的侧边栏创建一个菜单 每个按钮都有一个指定的包含相关数据的弹出窗口 不幸的是 其中一个弹出窗口可能包含任意数量的行 并且在某些情况下它可能部分位于视口之外 See http jsfiddle net bfd9f 1 h

随机推荐

  • Objective C 中的 Sqlite 数据库插入语句

    我尝试仅将两个整数变量插入到我的 sqlite 数据库中 我创建了一个名为 ups sqlite 的数据库 它有一个表 upssTable 该表有两列 但是当我打开 Users ds Library Application Support
  • 分解 LPARAM 变量并查看位组

    我知道 LPARAM 变量设置了某些位 在其内部 当我收到 WM KEYDOWN 事件时 这些位可识别诸如长按键等信息 所以我试图分解一个 LPARAM 变量并查看各个位值组和位组以及该值 例如查看第 16 位到第 24 位以及其中的值 我
  • C# HTML 从 WebBrowser 到有效的 XHTML

    因此 我们在编辑模式下使用 webBrowser 控件 允许人们输入文本 然后将该文本发送到服务器供每个人查看 IE 它是一个HTML输入框 该框的 HTML 输出不是标准的 XHTML 因为它只是一个 webBrowser 控件 因此我需
  • 如何检查列表中的哪些项目满足特定条件?

    如何创建一个名为busLineLonger的函数 它至少接收两个参数来决定公交线路是否更长 This is how it works busStops number of the bus number of stops busLineLon
  • 从 MVC 3 中的 ActionResult 类型方法将 JSon 数组返回到 $.ajax

    我有一个 TreeView 助手 它获取类别列表及其链接 我这样做了 helper TreeView FavouriteLinksXmlMVC3 Controllers HomeController cat cat new Favourit
  • 使用来自内容提供商和活动的 MvvmCross

    我正在尝试在我的一个应用程序中使用 MvvmCross v3 该应用程序由活动 内容提供程序和广播接收器组成 然而 我并没有很成功 该应用程序由一个包含逻辑 模型和视图模型的 Core PCL 和一个包含所有 MonoDroid 特定内容的
  • 从 C# 引用 VBA 程序集时出现运行时错误

    我有一个 C NET 3 5 项目 不幸的是它依赖于几个 VB6 ActiveX 控件 到目前为止 我已经能够通过简单地在项目中添加对控件的引用并正常引用它们来愉快地访问 ActiveX 控件中定义的数据容器和方法 然而 今天我遇到了一个障
  • 当父进程退出时,如何使子进程退出?

    我正在使用 ProcessBuilder 启动一个子进程 并且如果父进程退出 则需要子进程退出 在正常情况下 我的代码会正确停止孩子 但是 如果我导致操作系统杀死父进程 子进程将继续运行 有什么方法可以将子进程 绑定 到父进程 这样当父进程
  • 如何绘制实心圆?

    我正在根据规范使用 C 代码创建位图 bmp 文件 并且我想在位图上绘制简单的图元 以下代码显示了如何在位图上绘制矩形 if curline gt type 1 draw a rectangle int xstart curline gt
  • SQLAlchemy 返回奇怪的数据

    我正在尝试从表中导出日期 我只想将原始创建的对象拉出来 我正在运行以下查询 return model Session query cls filter cls issue id issue id order by desc created
  • SQL:更新表,其中列=多个值

    我创建了一个 SQL 查询 它更新表列 其中另一列 值 CODE Update Products Set ProductName Shoes WHERE ProductID 1 2 3 4 5 6 7 8 问题在于ProductID 我怎样
  • java应用程序可以分配比jvm启动参数指定的更多的内存吗?

    假设 java 应用程序不使用任何本机库 有没有办法让它分配比 jvm 启动参数指定的内存更多的内存 反过来问 我可以相信 Java 应用程序永远不会分配比 JVM 启动参数限制更多的内存吗 是的 它可以 它不能在 JVM 堆上分配更多内存
  • 如何获取本地时间并将其放入字符串中

    我有一个方法s它有一个日期时间作为参数 怎么用c 写呢 In c it is string s System DateTime sd 编辑 如何调用S方法 我也想在一个字符串中显示小时 在另一个字符串中显示第二个 等等 另一个问题是 如何转
  • 如何以编程方式配对 Android 蓝牙设备

    我正在开发一个应用程序 我想连接蓝牙设备 主要问题是我不希望用户输入所需的密码 而是应用程序应该自己执行此操作 我没有任何与连接相关的问题 只想要由应用程序本身插入并完成 pin 身份验证过程 我发现以下代码我确信它可以工作 但不确定如何在
  • Gatsby Develop:安装“sharp”模块时出错

    我刚刚在 Gatsby 上从入门模板上进行了 git 克隆 当我运行 gatsbydevelopment 时遇到了这个错误 我已经删除了节点模块 以及节点模块中的锐模块 无济于事 请让我知道此时发生了什么 PS C Users ipche
  • Keras:使用模型的一阶导数和二阶导数之和作为最终输出

    假设我使用 Keras 创建了这个模型 model Sequential model add Dense 32 activation tanh input dim 1 model add Dense 10 activation tanh m
  • 子类上的急切加载关联

    我有以下 简化的 类层次结构 def Parent lt ActiveRecord Base end def Child lt Parent belongs to other end def Other lt ActiveRecord Ba
  • jiffies 在无滴答内核中如何递增?

    内核维护一个全局变量 名为jiffies它保存系统启动时的滴答数 定时器中断数 每次发生定时器中断时 内部内核计数器的值都会递增 在无滴答内核 动态滴答中 中断不会定期发生 那么jiffies增加 的价值jiffies总是更新调用do ti
  • Jackson/Hibernate、元获取方法和序列化

    我们有很多具有嵌套关系的休眠实体类 我正在尝试找到将给定实体转换为等效 json 格式的最佳方法 我了解 JsonIgnore Jackson mixins 和 JsonFilters 并且一直在尝试这些 我们面临的挑战如下 使用 OneT
  • 如何通过单击按钮打印 HTML 内容而不是页面? [复制]

    这个问题在这里已经有答案了 我想在用户单击按钮时打印一些 HTML 内容 一旦用户单击该按钮 浏览器的打印对话框将打开 但不会打印网页 相反 它会打印页面上未显示的其他一些 HTML 内容 在问这个问题时 我脑子里几乎没有解决方案 但我不确