前端實現瀏覽器打印

瀏覽器的print方法直接調用會打印當前頁面的所有元素,使用iframe可以實現局部打印所需要的模塊。

組件printView,將傳入的信息放入iframe中,調用瀏覽器的打印功能

<template><div class="print"><iframeid="iframe"style="display: none; width: 100%"frameborder="0"></iframe></div>
</template>
<script>
export default {name: 'printView',methods: {setBodyHtml(html) {const document = window.documentconst iframe = window.frames[0]iframe.document.head.innerHTML = document.head.innerHTML // 獲取當前文檔的頭部給iframeiframe.document.body.innerHTML = html // 把傳過來的html給iframe頭部iframe.document.body.style.background = '#fff'let arr = document.getElementsByTagName('tr')let heightNum = 0let onePage = 800 //第一頁的高度for (let i in arr) {heightNum += arr[i].offsetHeightif (heightNum > onePage) {heightNum = arr[i].offsetHeightonePage = 1500 //第二頁高度}}iframe.window.print()}}
}
</script>

<div v-if="detail.work_order_id" class="before" id="print_info">

? ? ? ? <work-order-detail :detail="detail"></work-order-detail>

</div>

// 打印

const viewRef = ref(null)

const print = () => {

? const html = document.getElementById('print_info').innerHTML

? viewRef.value.setBodyHtml(html)

}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/715119.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/715119.shtml
英文地址,請注明出處:http://en.pswp.cn/news/715119.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

馬斯克指控OpenAI違背成立協議,要求恢復開源;Automattic否認向AI公司出售用戶數據

&#x1f989; AI新聞 &#x1f680; 馬斯克指控OpenAI違背成立協議&#xff0c;要求恢復開源 摘要&#xff1a;馬斯克近日在舊金山高等法院對OpenAI及其CEO阿爾特曼提起訴訟&#xff0c;指控他們違反最初促進AI技術造福人類非營利方向的成立協議。馬斯克聲稱&#xff0c;Ope…

Linux命令-clear命令(清除當前屏幕終端上的任何信息)

說明 clear命令 用于清除當前屏幕終端上的任何信息。 語法 clear示例 直接輸入clear命令當前終端上的任何信息就可被清除。

【JavaSE】時間類相關API以及使用

目錄 時間類相關API 1.Date類 2.SimpleDateFormat類 3.Calendar類 4.JDK8-時區&#xff0c;時間和格式化 5.JDK8-日歷和工具類 時間類相關API 以下內容是通過觀看黑馬java的常見API視頻總結加筆記&#xff0c;其中有JDK7以及以前的時間類&#xff0c;包括&#xff1a;Date&…

我在代碼隨想錄|寫代碼Day30 | 貪心算法 | 435. 無重疊區間,763.劃分字母區間, 56. 合并區間, 738.單調遞增的數字

&#x1f525;博客介紹&#xff1a; 27dCnc &#x1f3a5;系列專欄&#xff1a; <<數據結構與算法>> << 算法入門>> << C項目>> &#x1f3a5; 當前專欄: <<數據結構與算法>> 專題 : 數據結構幫助小白快速入門算法 &…

[HackMyVM]靶場 VivifyTech

kali:192.168.56.104 主機發現 arp-scan -l # arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.56.1 0a:00:27:00:00:05 (Unk…

matlab階段學習小節1

數組排序 fliplr()實現數組倒序&#xff0c;但不對大小進行排序&#xff0c;只是元素位置掉頭。 要想實現大小倒序排列&#xff0c;可以先sort()實現正序排列&#xff0c;再用fliplr倒一下 %數組運算 %矩陣 %xAb的解xb/A;(矩陣) %右除運算A/B&#xff0c;左矩陣為被除數&a…

多態——細致講解

&#x1f536;多態基礎概念 ?&#x1f536;概念 ??&#x1f531;多態性 ??&#x1f531;多態——重新(覆蓋) ?&#x1f536;示例 ??&#x1f536;基本使用方法 ??&#x1f536;特例 ???&#x1f531;協變 ???&#x1f531;析構函數重寫 ?&#x1f531;多態原理…

`useState` 和 `useImmer` 都是 React 中用于管理狀態的鉤子

useImmer如何使用&#xff1a; 安裝&#xff1a;yarn add use-immer使用&#xff1a; const [data, updateData] useImmer({fields: [], });updateData((draft) > {draft.fields.splice(index, 1, {id:1});});useState 和 useImmer 都是 React 中用于管理狀態的鉤子&…

redis實戰筆記匯總

文章目錄 1 NoSQL入門概述1.1 能干嘛&#xff1f;1.2 傳統RDBMS VS NOSQL1.3 NoSQL數據庫的四大分類1.4 分布式數據庫CAP原理 BASE原則1.5 分布式集群簡介1.6 淘寶商品信息的存儲方案 2 Redis入門概述2.1 是什么&#xff1f;2.2 能干嘛&#xff1f;2.3 怎么玩&#xff1f;核心…

46、WEB攻防——通用漏洞PHP反序列化原生類漏洞繞過公私有屬性

文章目錄 幾種常用的魔術方法1、__destruct()2、__tostring()3、__call()4、__get()5、__set()6、__sleep()7、__wakeup()8、__isset()9、__unset()9、__invoke() 三種變量屬性極客2019 PHPphp原生類 幾種常用的魔術方法 1、__destruct() 當刪除一個對象或對象操作終止時被調…

關于 yarn 的中央倉庫 registry.yarnpkg.com

"Yarn" 是一個開源的 JavaScript 包管理工具&#xff0c;用于管理項目中的依賴關系。Yarn 通過一個叫做 "registry" 的中央倉庫來存儲和檢索各種 JavaScript 包。這個中央倉庫可以通過 https://registry.yarnpkg.com/ 訪問&#xff0c;它是 Yarn 包管理系統…

像用Excel一樣用Python:pandasGUI

文章目錄 啟動數據導入繪圖 啟動 眾所周知&#xff0c;pandas是Python中著名的數據挖掘模塊&#xff0c;以處理表格數據著稱&#xff0c;并且具備一定的可視化能力。而pandasGUI則為pandas打造了一個友好的交互窗口&#xff0c;有了這個&#xff0c;就可以像使用Excel一樣使用…

數據庫運維01

數據備份多重方案 核心sql語句 mysql復制架構 mysql 生產實踐 mysql可用的集群和中間件 linux環境 linux的命令要掌握 dba數據庫管理員 it部門負責數據庫維護 一定規模的企業 健康良好的運行數據庫 對數據庫做策略&#xff0c;保證數據庫的穩定 查數據要盡快的返回 復雜的數據需…

【Spring Boot 3】的安全防線:整合 【Spring Security 6】

簡介 Spring Security 是 Spring 家族中的一個安全管理框架。相比與另外一個安全框架Shiro&#xff0c;它提供了更豐富的功能&#xff0c;社區資源也比Shiro豐富。 一般來說中大型的項目都是使用SpringSecurity 來做安全框架。小項目有Shiro的比較多&#xff0c;因為相比與Sp…

Linux線程【互斥與同步】

目錄 1.資源共享問題 1.1多線程并發訪問 1.2臨界區和臨界資源 1.3互斥鎖 2.多線程搶票 2.1并發搶票 2.2 引發問題 3.線程互斥 3.1互斥鎖相關操作 3.1.1互斥鎖創建與銷毀 3.1.2、加鎖操作 3.1.3 解鎖操作 3.2.解決搶票問題 3.2.1互斥鎖細節 3.3互斥…

github用法詳解

本文是一篇面向全體小白的文章,圖文兼備。為了讓小白們知道如何使用GitHub,我努力將本文寫得通俗易懂,盡量讓剛剛上網的小白也能明白。所以各位程序員們都可以滑走了~ 啥是GitHub? 百度百科會告訴你, GitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持Git作為…

大模型訓練——PEFT與LORA介紹

大模型訓練中的PEFT&#xff08;Parameter-Efficient Fine-Tuning&#xff09;與LoRA&#xff08;Low-Rank Adaptation&#xff09;是兩種重要的技術&#xff0c;它們在大型預訓練模型的應用中發揮著重要作用。 首先&#xff0c;讓我們來了解一下PEFT。PEFT是一種參數高效的微…

GO基本類型

Go語言同時提供了有符號和無符號的整數類型。 有符號整型&#xff1a;int、int8、int64、int32、int64無符號整型&#xff1a;uint、uint8、uint64、uint32、uint64、uintptr 有符號整型范圍&#xff1a;-2^(n-1) 到 2^(n-1)-1 無符號整型范圍: 0 到 2^n-1 實際開發中由于編…

英語中的提問方式(問法)(bug提問、bug描述)

文章目錄 英語提問方式一、單詞、短語、句子的意思1.1 提問單詞的意思1.2 提問短語的意思1.3 提問句子的意思 二、在編程中提問2.1 提問bug2.2 請求代碼幫助 如何提出反問句1. 構建反問句的基本結構2. 提問反問句的方法3. 理解反問句的意圖 在口語中提問&#xff1a;確保清晰度…

Topaz Gigapixel AI:讓每一張照片都煥發新生mac/win版

Topaz Gigapixel AI 是一款革命性的圖像增強軟件&#xff0c;它利用先進的人工智能技術&#xff0c;能夠顯著提升圖像的分辨率和質量。無論是攝影愛好者還是專業攝影師&#xff0c;這款軟件都能幫助他們將模糊的、低分辨率的照片轉化為清晰、細膩的高分辨率圖像。 Topaz Gigap…