首页 > 其他分享 >网页打印(不使用插件的情况下)

网页打印(不使用插件的情况下)

时间:2023-04-03 11:08:20浏览次数:39  
标签:body 插件 网页 打印 innerHTML bdhtml var print document


//剔除不需要打印的部分
        function Contrarypreview() {
            bdhtml = document.body.innerHTML;
            sprnstr = "<!--startprint-->";
            eprnstr = "<!--endprint-->";
            var tophtml = bdhtml.substr(0, bdhtml.indexOf(sprnstr));
            var bothtml = prnhtml.substring(bdhtml.indexOf(eprnstr)+15);
            document.body.innerHTML = tophtml + bothtml;
            document.execCommand("print");
        }
function preview() {
            bdhtml = window.document.body.innerHTML;
            sprnstr = "<!--startprint-->";
            eprnstr = "<!--endprint-->";
            prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17);
            prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
            window.document.body.innerHTML = prnhtml;
            window.print();
        }```


已测试
function print4() { 
 var headhtml = document.getElementById(“head”).innerHTML; 
 //alert(headhtml); 
 var headstr = “” + headhtml + ““; 
 var footstr = ““; 
 var printData = document.getElementById(“dvData”).innerHTML; //获得 div 里的所有 html 数据 
 var oldstr = document.body.innerHTML; 
 document.body.innerHTML = headstr + printData + footstr; 
 //window.print(); 
 document.execCommand(“print”); 
 //document.body.innerHTML = oldstr; 
 return false; 
 }


function print2() { 
 document.execCommand(“print”); 
 } 
 function print3() { 
 window.print(); 
 }


function print5() { 
(‘#Div1’).attr(“style”,”display:none;”);  
            document.execCommand(“print”);(‘#Div1’).attr(“style”, “display:block;”); 
 } 
 “`


标签:body,插件,网页,打印,innerHTML,bdhtml,var,print,document
From: https://blog.51cto.com/u_15999672/6165717

相关文章

  • vue3 - 引入自定义插件的组件的具体写法
    1.背景我的这一篇随笔详细讲解组件怎么制作与引入使用【vue3-在单独的项目制作自定义组件插件,支持vite【前提不要使用webpack专属语法】,并引入插件-心得-岑惜-博客园(cnblogs.com)】但在局部引入组件时,eslint红色警告   引用名言:“又不是不能用==”强迫症看着实......
  • Mybatis之数据库连接+PageHelper分页插件+Mybatis-Plus插件
    MyBatisPlus教程(人人便成为)https://www.cnblogs.com/chch213/p/16320820.html前言ORM框架:对象关系映射 objectrelationalmapping 半自动ORM映射工具(自己编写sql语句)  Hibernater属于全自动映射规则:数据库表>类|表字段>类的属性|表数据>对象 JDBC操......
  • Python | 解决方案 | 多个文件共用logger,重复打印问题
    项目中封装了logging库为log.py,实现既把日志输出到控制台,又写入日志文件文件。环境:python3.7.3项目中,多个文件共用logger,出现重复打印问题,解决流程记录如下:文件和调用方式如下:log.pyv1#encoding=utf-8####@Description:日志封装文件#@Author:fatih#@Dat......
  • java使用模块后,用maven打包时,需要保护的maven插件
    <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.0</version><configuration><release>11</release><......
  • Java实现新建三个线程,每个线程顺序打印5个数字,打印到100
    方法一:synchronized+wait+notify//三个线程循环打印数字,每个打印5个,打印数字到numclassWaitNotifyABC{  privatevolatileintnum=0;//线程共享变量  /**Object和this都可以对同步代码块加锁,但是this锁的是类的实例,如果该实例被他人拿走,  则本线......
  • markdown.md不保存网页编辑器
    {GrammarName}的内容提取器(Extracter)得到单词流TokenList和语法树Node后,就可以得到{GrammarName}的实际内容{ExtractedType}了。之后程序员就可以自由地对此{ExtractedType}对象进行任何操作了。实现{ExtractedType}Extracter的要点,简述如下:用后序优先遍历算法(Post-OrderTra......
  • console打印打印数据并下载打印的数据
    前言项目中经常使用到console.log进行调试打印数据,如果想下载console打印的数据,可进行如下配置:配置(function(console){console.save=function(data,filename){if(!data){console.error('Console.save:Nodata')return;}if(......
  • 安装grafana并且安装插件
      安装:到清华源去下载Indexof/grafana/yum/rpm/Packages/|清华大学开源软件镜像站|TsinghuaOpenSourceMirror  安装:yumlocalinstall grafana-6.3.0-1.x86_64.rpm-yComplete![root@zabbix-server~]#grafana-grafana-cligrafana-server[root@zabbix......
  • 5.clone plugin(克隆插件)的限制
    1.在使用ClonePlugin时,注意以下限制:克隆期间,会阻塞DDL。同样,DDL也会阻塞克隆命令的执行。不过从 MySQL8.0.27开始,克隆命令不会阻塞Donor上的DDL。ClonePlugin不会拷贝Donor的配置参数。ClonePlugin不会拷贝Donor的Binlog。ClonePlugin只会拷贝Inno......
  • OpenGL Mac开发-如何使用imgui(1.89.4)插件进行调试
    为了调试我们的OpenGLDemo,可以尝试使用一个成熟的开源GUI插件imgui。1,首先进入imgui在github上的地址。在Release中下载最近的版本,可以得到一个Zip压缩包。现在是2023年的4月1日,我下载到的版本是1.89.4,与Cherno的OpenGL教程中的代码略微有些区别。如果你看的是Cherno的教程,也......