精华内容
下载资源
问答
  • JavaScript 精华一页纸

    2017-04-07 16:15:12
    JS 自身操作部分 1、数据类型 | 变量定义 动态语言,不需要指定参数的数据类型,也就是说可以任意赋值 数字 | 布尔 | 字符串 | 数组 | 对象 未定义的变量 undefined undefined 和 null 的区别:...

    JS 自身操作部分


    1、数据类型 | 变量定义
    动态语言,不需要指定参数的数据类型,也就是说可以任意赋值
    数字 | 布尔 | 字符串 | 数组 | 对象

    未定义的变量 undefined

    undefined 和 null 的区别:undefined 值为 null,类型为 undefined,表明未定义;null值为null,类型为 object,表明为空。

    字符串和Java类似;数字类型都是 64位,不区分具体类型。
    类型转换
    数字 - > 字符串
    toString | String()
    字符串 -> 数字
    parseInt/parseFloat -- 和Java 略有区别的是,如果数字和字母混合,则会截取一段转换
    进制转换
    toString(2/8/16) - 精度

    类型检测 - typeOf 类似 instanceof
    如果判断一个对象是什么类型 一般 可以使用 constructor 属性来判断

    eval -- 计算并执行 string 里面的语句;尽量避免使用,防止恶意代码;
    escape -- 对特殊字符进行编码

    2、对象
    三种定义方式,最常用的还是{}方式

    var obj = {id:1,name:"aa",fun:function(){}};

    可以动态的给对象增加新的属性和函数;如果需要给已经存在的对象增加函数(比如系统类库添加方法)
    -- 任何类都有prototype属性,所以添加类方法,只需要给 prototype 增加方法即可 

    补充阅读:原型链

    对象 this - 在不同位置,代表不同意思,一般是指调用 该函数时的对象

    函数对象
    和Java一样值传递,可以修改 外部的对象参数值
    函数并不检查隐式参数的任何情况,可以使用 arguments 实现很多功能;调用时,如果参数个数少于函数定义,则其他的都是undefined

    function定义对象
    Function(para1,para2){
    this.para1 = para1;

    this.func = function(){
    }
    }
    function myFunction(a,b){ }

    call vs apply - 有点像java的反射调用
    myFunction.call(obj,a,b); -- 这里 函数也当成了一个对象,通过对象来调用函数,如果是对象的方法,传入对象,如果是全局,可以传入null
    myFunction.apply(obj,[a,b]);

    数字对象
    isNaN - 是否数字 | toFixed() 精度

    String对象
    indexOf()/charAt/toLowerCase/toUpperCase/length

    日期对象 类似于 Java.util.Date
    new Date(参数可选 日期|毫秒|年月日等等)
    setFullYear / setDate

    数组对象
    concat 合并两个 | filter 过滤 | join 把数组转换成字符串 | [last]indexOf 索引 | map 处理数组的每个元素返回新数组 | push/pop 向尾部增加或者取出 | reverse 反转| shift 返回第一个并删除 | slice 选取一部分数组 | some 是否有符合条件的数据 | sort 排序 | splice 添加 | unshift 向数组头部插入元素 | valueOf 返回数组对象值
    -- 这些函数的提供,非常符合函数化特征,在 scala里面也大量使用了类似的功能。

    正则表达式
    new RegExp | /表达式/gim
    提供 test exec(返回匹配的字符串) 来进行匹配判断;另外,字符串替换,match 都采用了正则表达式对象

    Math 对象
    PI/round/floor/ceil/ranodm/min/max

    对象与json的互转
    json.parse
    json.stringify

    3、逻辑控制
    判断 | 循环 和 java类似(for in 循环java 也支持
    运算符 | 表达式 都和 java类似

    补充阅读:for in 循环如果使用在数组中,而数组扩展了prototype原型方法,循环迭代时,有可能迭代到原型方法

    4、异常处理
    try{

    }catch(err){
    -- 因为没有类型定义,所以只有一个 catch
    }
    throw

    5、提升 (变量和函数)
    前面的代码 可以使用后面声明的变量|函数;不建议使用,违反正常阅读习惯

    6、严格模式

    7、自调用函数和闭包
    (function(){
    var para = aa;
    return {
    para:para,
    func:function
    }
    })();
    首先 是自调用,保证了代码的执行;其次通过闭包封装;并返回了一个对象,这样对模块进行了封装;实现了类似class的功能。

    HTML DOM 操作


    8、元素操作 - document
    获取元素 getElementById/ getElementByTagName / getElementByClassName
    父子|兄弟关系 firstChild/lastChild/nextSibling/parentNode /childNodes
    属性 getAttribute/ attributes
    可以直接指定属性操作 element.src = xxx
    新增元素 createElement/ createTextNode/ createAttribute / appendChild / insertBefore
    删除/更新元素 replaceChild / removeChild/ setAtrribute

    元素属性 nodeName | nodeValue | nodeType
    文本节点有 value没有name | 普通节点有name 没有value | 1元素|2属性|3文本|8注释|9文档

    这里有一点和 XML 解析是类似的,就是每个元素节点之间都有 空白文本子节点,就是元素之间的空白?????

    9、样式操作
    element.style.xxx = value;
    element.className =

    10、事件
    I、事件类型

    a、文档加载相关(系统框架事件)
    onload | onunload | onbort | onerror | onpageshow | onresize | onscroll
    b、鼠标事件
    onclick | ondbclick | onmouseover | onmouseout | onmousedown | onmouseup | onmouseenter| onmouseleave
    c、键盘事件
    onkeydown | onkeypress | onkeyup
    d、表单事件
    onchange | onfocus | onblur | onfocusin | onfocusout | oninput | onreset | onsearch | onselect | onsubmit
    e、剪贴板 & 打印 & 拖动 & 动画 & 多媒体 & 过渡 & 其他等等

    II、事件模型
    a、DOM level 0 的属性绑定事件
    b、DOM level 2的事件注册派发模型
    addEventListener / attachEventListener / removeEventListener
    window.addEventListener("resize", function(){
    document.getElementById("demo").innerHTML = sometext;
    }, 冒泡or捕获)
    事件传递有两种方式:冒泡与捕获。
    事件传递定义了元素事件触发的顺序。 如果你将 <p> 元素插入到 <div> 元素中,用户点击 <p> 元素, 哪个元素的 "click" 事件先被触发呢
    在 冒泡 中,内部元素的事件会先被触发,然后再触发外部元素,即: <p> 元素的点击事件先触发,然后会触发 <div> 元素的点击事件。
    在 捕获 中,外部元素的事件会先被触发,然后才会触发内部元素的事件,即: <div> 元素的点击事件先触发 ,然后再触发 <p> 元素的点击事件

    III、事件对象
    属性
    bubbles 是否冒泡类型 | currentTarget -- 触发事件的元素 | target -- 触发事件的元素 | type - 事件类型

    方法
    preventDefault -- 通知浏览器不执行动作(阻止事件冒泡) | stopPropagation -- 不再派发事件

    如果是键盘/鼠标事件对象,还能获取 坐标、位置、键盘字母等等
    clientX/Y
    screenX/Y

    target 和 currentTarget的区别?
    如果只是 DOM level 0 很简单,监听对象很明确,就是 绑定属性的这个元素。两者相同
    但如果 使用 addEventListener 时,就会存在 父子容器的情况,如果是 子容器的点击事件;父容器在监听 - 冒泡;或者反过来,捕获,父容器事件,子容器在点击
    target 对应 真实点击事件的 元素对象
    currentTarget 对应 监听事件的 元素对象

    javascript:void(0) 代表的是什么意思呢?
    void 是 JavaScript 中非常重要的关键字,该操作符指定要计算一个表达式但是不返回值。一般可以用在链接转菜单|导航时,点击不跳转只有其他效果

    <a href="javascript:void(0)">单击此处什么也不会发生</a>
    <a href="javascript:void(alert('Warning!!!'))">点我!</a>

    href="#"与href="javascript:void(0)"的区别
    # 包含了一个位置信息,默认的锚是#top 也就是网页的上端。
    而javascript:void(0), 仅仅表示一个死链接。
    在页面很长的时候会使用 # 来定位页面的具体位置,格式为:# + id。
    如果你要定义一个死链接请使用 javascript:void(0) 。

    浏览器相关


    11、window 对象
    window对象 是默认的,所有对象和方法都在 window对象中
    Window 对象拥有的属性
    screen 屏幕对象 | location 访问的url | history 浏览历史 | navigator 浏览器 | document 文档对象

    方法
    setTimout / setInterval / clearTimeout / clearInterval / setScroll / ...

    事件
    onlaod or ready
    一般 把函数引用 和 HTML的联结 都放在 window.onload 事件中,否则操作的dom 元素可能还未存在
    都是加载完毕。ready 只包括html文档,但图片等可能还未加载完;onload是所有的都加载完

    12、弹出框
    alert | confirm | prompt

    13、cookie
    document.cookie
    不同浏览器不能共享 cookie; 判断浏览器是否支持 cookie -- navigator.cookieEnable

    原文博客  http://www.likeway.net/?p=20

    展开全文
  • <!--startprint--> 你想打印的内容写在这里 <!--endprint-->首先用这两个注释标签,将需要打印的部分包起来,类似于下<!--startprint--> <p class="P-blod">{$user_info.user_nic
    <!--startprint-->
     <h1>你想打印的内容写在这里</h1>
    <!--endprint-->

    首先用这两个注释标签,将需要打印的部分包起来,类似于下

    <!--startprint-->
    <div class="right-item">
        <div class="right-title">
            <p class="P-blod">{$user_info.user_nickname}报价单</p>
        </div>
        <!--表格-->
        <div class="tab">
            <table>
                <tr id="print_order_list">
                    <th>序号</th>
                    <th>型号</th>
                    <th>材质 <!--<input type="radio" name="d-item">--></th>
                    <th>主体厚度(mm) <!--<input type="radio" name="d-item">--></th>
                    <th>盖板厚度(mm) <!--<input type="radio" name="d-item">--></th>
                    <th>价格(元/米)</th>
                    <th>含税价格 (元/米) <!--<input type="radio" name="d-item">--></th>
                    <th class="no_print">删除</th>
                </tr>
            </table>
        </div>
    
        <!--底部按钮-->
        <div class="button-item">
            <a href="javascript:;" class="while no_print" id="do_print">开始打印</a>
        </div>
    </div>
    <!--endprint-->

    然后写一个 function doPrint();

    <script>
    function doPrint() {
        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();
    }
    </script>

    在需要打印的地方调起 doPrint()方法
    如上代码中的 开始打印按钮 当用户点击时,如下代码

    /*
     * 打印开始
     * */
     $("#do_print").on("click",function () {
         var no_print = $(".no_print");
         no_print.hide();
         doPrint();
         no_print.show();
    
     })

    代码中

    no.print.hide(); //是我将打印区域不想出现在打印页面的DOM元素在打印之前隐藏掉
    doPrint();       //这时候执行打印
    no_print.show(); //是打印成功后,将之前隐藏的Dom元素显示出来

    这样就实现了
    下图是原始网页,用户想实现打印右半部分的报价单,并且不想出现表单中的 删除,删除图标,以及开始打印部分元素
    所以就使用hide()在打印之前,将其隐藏,打印调起后,再显示出来
    某个网页完整显示部分

    这样调起打印的效果如下图
    调起打印后效果图
    如有帮助,望评论;也可添加 wx (qubojie) 一起讨论;

    展开全文
  • Print.js 官网官网优点:可以打印...、vue安装命令:npm install print-js --save二、引入这个引入不需要在main.js中,直接在使用的.vue中引入即可这里颜色虽然是灰色,但是也要添加,否则会报错。三、编码我这里...

    Print.js 官网

    官网

    优点:可以打印多种格式的内容(pdf、json、html等)

    打印json时可以添加表头。打印html页时可以继承原有页面的样式,局部打印,过滤掉要打印的元素,及其方便。

    一、vue安装命令:

    npm install print-js --save

    二、引入

    这个引入不需要在main.js中,直接在使用的.vue中引入即可

    055fa0048ba92374aa8b656c223b26e5.png

    这里颜色虽然是灰色,但是也要添加,否则会报错。

    三、编码

    我这里要打印 html 中的div ,调用函数找到 div 的 id。

    dbe9bb1746bbb8e7020c8e0bf98cdc4a.png

    methods: {

    goPrint(){

    console.log('打印')

    printJS({

    printable: 'printCons',

    type: 'html',

    //properties: [

    // { field: 'name', displayName: '姓名', columnSize:`50%`},

    // { field: 'sex', displayName: '性别',columnSize:`50%`},

    //],

    // header: `

    名单

    `,

    // style: '#printCons {width: 600px;} .no-print{width: 0px} .itemText1 { width: 200px } .itemText2 { width: 200px } .itemText3 { width: 200px } .itemText4 { width: 200px }',

    // gridHeaderStyle:'font-size:12px; padding:3px; border:1px solid; font-weight: 100; text-align:left;',

    // gridStyle:'font-size:12px; padding:3px; border:1px solid; text-align:left;',

    // repeatTableHeader: true,

    // scanStyles:true,

    targetStyles: ['*'],

    ignoreElements:['no-print','bc','gb']

    })

    }

    }

    printable:要打印的id。

    type:可以是 html 、pdf、 json 等。

    properties:是打印json时所需要的数据属性。

    gridHeaderStyle和gridStyle都是打印json时可选的样式。

    repeatTableHeader:在打印JSON数据时使用。设置为时false,数据表标题将仅在第一页显示。

    scanStyles:设置为false时,库将不处理应用于正在打印的html的样式。使用css参数时很有用。

    targetStyles: [’*’],这样设置继承了页面要打印元素原有的css属性。

    style:传入自定义样式的字符串,使用在要打印的html页面 也就是纸上的样子。

    ignoreElements:传入要打印的div中的子元素id,使其不打印。非常好用

    展开全文
  • Node.js 精华一页纸

    2017-04-13 22:46:14
    Node.js 本质上是个运行平台,提供提供文件/网络等系统资源,从而使js语言有了操纵服务端的能力。应该说Node.js的出现有 划时代的作用,以前只把js定位为前端语言,有了Node.jsjs变成了全栈语言。 除了Node...

    Node.js 本质上是一个运行平台,提供提供文件/网络等系统资源,从而使js语言有了操纵服务端的能力。应该说Node.js的出现有 划时代的作用,以前只把js定位为前端语言,有了Node.js 后 js变成了全栈语言。

    除了Node.js以外,熟悉java的同志可以发现 java有相应的js执行引擎 rhino / nashron,通过java搭建平台后,可以达到Node.js 的功效。

    1、典型例子


    var http = require('http');
    http.createServer(function (request, response) {
    // 发送 HTTP 头部
    // HTTP 状态值: 200 : OK
    // 内容类型: text/plain
    response.writeHead(200, {'Content-Type': 'text/plain'});
    // 发送响应数据 "Hello World"
    response.end('Hello World\n');
    }).listen(8888);

    // 终端打印如下信息
    console.log('Server running at http://127.0.0.1:8888/');

    步骤
    I、引入XXX模块,这里 引入的是 Http模块
    II、创建一个 node 的对象
    III、通过node对象进行处理

    2、事件循环


    因为系统资源基本都是需要操作IO的,比如文件系统,网络等等。这就需要涉及IO操作的几种方式:同步 or 异步;阻塞 or 非阻塞 - 具体可以参照本博《java io 精华一页纸》
    Node.js 因为是单进程单线程的,要处理这些IO,就只能采用异步的方式,即通过事件和回调函数来实现事件的处理

    这个非常类似 NIO 的并发机制,其实,执行 事件触发后的调用,如果不使用多线程或者队列,还是有阻塞的

    // I、引入 events 模块
    var events = require('events');
    // II、创建 eventEmitter 对象
    var eventEmitter = new events.EventEmitter();
    // III、创建事件处理程序
    var connectHandler = function connected() {
    console.log('connect finish');
    }
    // IV、绑定 connection 事件处理程序
    eventEmitter.on('connection', connectHandler);
    // V、触发 connection 事件
    eventEmitter.emit('connection');
    console.log("exit");

    一般情况下,fs\net 这些模块都继承Events,很少直接使用 event 对象;

    特殊事件:error 类,系统发现 error类的事件,如果未定义处理方法,则node进程退出。

    3、组件化/模块化


    作为框架提供组件化/模块化几乎是一个标准配置;NodeJS 在模块方面,主要有两部分,一是 导出方法;另一个是导出对象
    对象.js
    function ObjectExport(name){
    this.name = name;

    this.showName = function(){
    console.log(name);
    }
    }

    module.exports = ObjectExport

    这个时候就可以像系统自带对象一样引用这个对象
    var obj = require("./useExport");
    var aa = new obj("aa");
    aa.showName();

    4、常见系统对象


    文件系统 fs
    -- 和java读写文件类似
    打开文件 -- fs.open(path,flag,mode,callback);
    读写文件 -- fs.read | fs.write
    关闭文件 -- fs.close
    其他删除,目录操作等等有很多

    fs.open('input.txt', 'r+', function(err, fd) {
    if (err) {
    return console.error(err);
    }
    console.log("success open file");
    console.log("ready read file");
    fs.read(fd, buf, 0, buf.length, 0, function(err, bytes){
    if (err){
    console.log(err);
    }

    // 仅输出读取的字节
    if(bytes > 0){
    console.log(buf.slice(0, bytes).toString());
    }

    // 关闭文件
    fs.close(fd, function(err){
    if (err){
    console.log(err);
    }
    console.log("close success");
    });
    });
    });

    网络操作 tcp/ip
    var net = require('net');
    var server = net.createServer(function(connection) {
    console.log('client connected');
    connection.on('end', function() {
    console.log('客户端关闭连接');
    });
    connection.write('Hello World!\r\n');
    connection.pipe(connection);
    });
    server.listen(3000, function() {
    console.log('server is listening');
    });

    var net = require('net');
    var client = net.connect(3000,'localhost', function() {
    console.log('连接到服务器!');
    });
    client.on('data', function(data) {
    console.log(data.toString());
    client.end();
    });
    client.on('end', function() {
    console.log('断开与服务器的连接');
    });

    操作系统 - os
    可以获取操作系统信息

    dns

    域 - domain

    路径操作 - path

    ...

    5、IO流


    既然都是IO操作为主,一定需要处理系统流;JavaScript只有操作字符型的数据,没有二进制的数据,Node 提供了流处理类
    I、Buffer类
    a、定义buff (用法类似arraylist,指定容量|指定数组|字符串等)
    var buf = new Buffer("aaabbbcc","utf-8");
    b、读写
    buf.write("12345","utf-8");
    buf.toString("utf-8",0,5)
    c、其他操作
    转换json buf.toJSON(buf);
    类似集合操作 比较 compare | 合并 concat | 截取 slice

    II、Stream流
    Stream 是一个抽象接口(类似于Java的 InputStream 这种),Node.js中很多涉及IO操作的都实现了该接口,比如 http请求的 request
    四种流类型 Readable - 可读 类似InputStream | Writable - 可写 类似OutputStream | Duplex - 可读可写 类似RandomAccessFile | Transform - 写入数据然后读
    流常见的事件有 data - 数据就绪 | end - 流结束 | error - 读取流错误 | finish - 所有数据已写入

    a、基本流

    var fs = require("fs");
    var data = '';
    var readerStream = fs.createReadStream('streamfile.js');
    readerStream.setEncoding('UTF8');
    readerStream.on('data', function(chunk) {
    data += chunk;
    });

    readerStream.on('end',function(){
    console.log(data);
    });

    readerStream.on('error', function(err){
    console.log(err.stack);
    });

    var writeStream = fs.createWriteStream("out.txt");
    writeStream.write(data);
    writeStream.end();
    writeStream.on('finish', function(){
    console.log("Write Finish");
    });

    console.log("Process Exit");

    b、管道 -- 类似于 Java的pipe
    readerStream.pipe(writerStream)
    -- 只需要把读流和写流联系在一起即可。

    可以把 管道不断链接起来,实现链式 流操作

    var fs = require("fs");
    var zlib = require('zlib');

    // 读取 streamlink.js ,然后压缩,最后再写入新的压缩文件
    fs.createReadStream('streamlink.js')
    .pipe(zlib.createGzip())
    .pipe(fs.createWriteStream('streamlink.js.gz'));

    console.log("finish");

    6、多进程


    nodejs 是单进程 单线程 (用户处理是单线程,但nodejs 肯定有一个事件线程在轮询) 模式运行,通过事件驱动来处理并发;这在某些场合下并不能满足,所以NodeJS提供了多进程的用法。

    创建子进程的三种方式(每个子进程都携带 child.stdin child.stdout child.stderr 三个流) -- 这个做法和H5的多线程理念非常类似

    exec -- 类似 Java 的 Rumtime.exec, 启动一个子进程执行命令
    spawn -- 使用命令行参数创建新的进程
    fork -- 类似于 C 的fork 一个子进程出来

    const fs = require('fs');
    const child_process = require('child_process');

    for(var i=0; i<3; i++) {
    var workerProcess = child_process.exec('node support.js '+i,
    function (error, stdout, stderr) {
    if (error) {
    console.log(error.stack);
    console.log('Error code: '+error.code);
    console.log('Signal received: '+error.signal);
    }
    console.log('stdout: ' + stdout);
    console.log('stderr: ' + stderr);
    });

    workerProcess.on('exit', function (code) {
    console.log('子进程已退出,退出码 '+code);
    });
    }

    7、其他知识


    REPL 交互式解释器 -- 命令终端下执行nodejs代码
    系统自带全局对象和属性 -- 这点和浏览器对象差不多,常见的 console / process, __filename / setTimeout
    工具库 util -- 提供了大量的公共方法
    NPM -- 包管理工具
    Express -- Web框架
    ...

    展开全文
  • javascript实现页面打印的三种方法
  • 关于vue使用print.js打印会有个空白的问题 在次使用vue的print.js打印简历的时候,会多出个空白,百度了一些博客,大致方法就是设置margin:0;但是我的项目依然是没有用。 突然想到了把边框打印出来,使用...
  • 项目中有遇到使用js打印页面的需求,这里记录几个打印的问题: 打印的代码: &lt;script type="text/javascript"&gt; var hkey_root, hkey_path, hkey_key; hkey_root = "HKEY_CURRENT_...
  • 但是在使用的时候一直会有一个问题:就是打印的时候总会在结尾多出一页空白页。经过一系列踩坑排查终于发现,原来是因为我的样式上对html,body,设置了高度100%。html, body, #app {margin: 0;padding: 0;height: ...
  • js或jquery实现页面打印

    千次阅读 2017-12-24 13:41:41
    最近一直在做页面打印相关的页面。这里分享下用css、js或jQuery实现页面打印的几种方法...
  • js打印设置边距

    热门讨论 2013-03-29 08:49:15
    js打印设置边距,设置页眉页脚,初始化页眉页脚,左右边距
  • js打印局部页面

    2019-03-28 03:56:21
    效果说明 原页面: ...因为 window.print() 只能打印整张页面,所以想要实现打印局部页面的效果,必须要在打印的时候,页面中只显示你想打印的那部分内容。 也就是说,要去掉其他内容。 有下面两种...
  • 场景: 最近在公司做开发,有个需求...上百度搜索圈,发现还是有大量的帖子,但很多都是重复的,且并不十分符合我当前的需求,但通过查阅大佬们的帖子,我对js打印的处理方向有个大致的了解。话不多说,开始进...
  • 打印html时可以继承原有页面的样式,局部打印,过滤掉要打印的元素,及其方便 、vue安装命令: npm install print-js --save 二、引入 vue 页面引用 这个引入不需要在main.js中,直接在使用的.vue中引入即可 ...
  • vue 使用print-js 打印html页面

    千次阅读 热门讨论 2020-07-24 18:32:46
    打印html时可以继承原有页面的样式,局部打印,过滤掉要打印的元素,及其方便。 、vue安装命令: npm install print-js --save 二、引入 这个引入不需要在main.js中,直接在使用的.vue中引入即可 这里颜色虽然...
  • JS打印页面指定区域

    2015-09-18 15:40:00
    //打印 function printPage(areaId) { if (parent.$("#PrinFrame").length == 0) { parent.$("body").append('<iframe id="PrinFrame" style="display: none; "></iframe>'); ...
  • 项目地址:体验网址:https://uniquelab.cn/ppmemo短网址:https://xd.sh.cn/pm项目博客地址:react 网页应用「记卡片 Paper MEMO...「记卡片 Paper MEMO」是个在线工具,它可以自动生成可打印、可裁剪的记忆...
  • 1、由来 在项目需求中,有需要实现的打印当前页面的方法,问题是:当鼠标右键打印时,由于多页面组合,导致页面重叠打印,很显然不符合...button type="button" onclick="javascript:window.print();" class="btn...
  • 至少这些帖子告诉我,是有两个可以选择的,并且多看几篇帖子,总算把这两个打印方法,都试了遍。 下面简单总结一下: 先说结论:请使用第二种方法,下载print.js到本地,然后放到项目中导入。原因后边说。 、...
  • 问题 打印A和B两个区域, 高度大于一张A4高度, 如何保证两个...Print.js,采用iframe绘制并打印 (复制调用即可) /***** iframe打印 * @param dom 打印区域的class, id * @param options.margin 控制页眉页脚, 默认 4
  • JS打印——第三方控件打印

    千次阅读 2015-12-14 17:23:18
    JS打印——第三方控件打印 LODOP 官方地址:http://www.lodop.net/ 个很好的打印控件,可以是实现纸张设置、横打竖打、打印预览、打印维护多种功能。官网的示例非常详细、能很好支持多种浏览器的打印。 在...
  • 前端 JS 调起打印机打印页面

    千次阅读 2020-11-03 12:25:22
    window 对象有个简单的方法可以直接调起打印机打印整个页面内容 window.print(); 但是真正应用的时候肯定需要个按钮点击打印,这个按钮肯定不需要显示在打印内容中,那如何打印指定部分的内容呢? 这时候我们...
  • 有没有办法,用CSS或javascript,以更改默认打印机设置,当有人在他们的浏览器打印?当然,“从他们的浏览器打印”我的意思是某种形式的HTML,而不是PDF或一些其他插件依赖mime类型。请注意:如果一些浏览器提供这个...
  • //切换打印方向 let $changePrint = function (type) { let html = ''; type = type?type:1; if(type=='1'){ html='<style type="text/css" media="print">\n' + ' @page { size: landscape; }\n' + '<...
  • javascript打印发票

    千次阅读 2018-09-28 17:42:31
    几个月前,公司的某个项目需要连接到打印机打印订单发票,利用javascript的window.print()调用打印页面进行打印。随着时间的推移,客户那边每次打印发票都需要手动进行切割。个订单的发票分为客户端和商家端,...
  • 一般的分辨率为XX像素/英寸,其中英寸为25.4毫米。 所以毫米的像素数就为XX/25.4。现在的工作就是求XX的值了,把XX的值求出来以后, 直接用XX/25.4 * 210就得到A4的像素宽了。 A4的尺寸是210mm×297...
  • javascript写的可直接打印成A4的日历,方便每月填写工作计划。左右键切换月份。 个人原创,自己平时上班时就在用,很方便。
  • JavaScript 打印结果时多出个undefined/出现undefined 1.检查是否变量未初始化. 如下图,未初始化值就拿来使用,结果会出现undefined. var newStr; 修正方法为:定义的同时给变量赋个值,如不需要值,可以赋空值...
  • 需要指出的是这种方法提供打印前和打印后的事件onbeforeprint、onafterprint。可以在打印前的时候重新编辑一些格式,专门送去打印打印后又处理回来。 function window.onbeforeprint() { //将一些不需要打印的...
  • JS实现网页打印打印预览默认为A4,纵向,如何把默认的改成A5,横向 ``` width="0" viewastext> 打印" onclick="document.all.WebBrowser.ExecWB(6,1)" class="NOPRINT"> 直接打印" onclick="document.all....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,480
精华内容 2,592
关键字:

js打印只打印一页