zoukankan      html  css  js  c++  java
  • 转载---QRcodeJS生成二维码

    QRCode.js

    QRCode.js是依赖JS生成二维码的.主要是通过获取DOM的标签,再通过HTML5Canvas绘制而成,不依赖JQ

    获取QRCode.js

    引入及用法

    引入

    • 只要在<head></head>中引入即可使用,JQ不依赖,可以替换其他版本JQ(其他内容有用到JQ,比如选择器获取)
    <script type="text/javascript" src="qrcode.js"></script>
    • 1
    • 1

    基本用法

    获取块,直接调用默认方法(输入生成的字符串即可生成二维码)

    <div id="qrcode"></div>
    <script type="text/javascript">
        new QRCode(document.getElementById("qrcode"), "https//blog.csdn.net/crper");
    </script>
    • 1
    • 2
    • 3
    • 4
    • 1
    • 2
    • 3
    • 4

    进阶用法

    QRCODE支持以下参数:

    • width(宽度)
    • height(高度)
    • colorDark(背景色)
    • colorLight(前景色)
    • correctLevel(容错级别,支持L,M,H)Low/Middle/High
    var qrcode = new QRCode("test", {
        text: "https//blog.csdn.net/crper",
         400,
        height: 400,
        colorDark : "#000000",   
        colorLight : "#ffffff",
        correctLevel : QRCode.CorrectLevel.H
    });
    
    qrcode.clear(); // 清除二维码
    qrcode.makeCode("http://naver.com"); // 生成另外一个二维码
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在线生成函数

    这个函数是获取id为text,判断内容是否为空,为空则弹窗提醒,不为空则生成二维码

    function makeCode () {      
        var elText = document.getElementById("text");
    
        if (!elText.value) {
            alert("请输入您要生成的二维码内容!");
            elText.focus();
            return;
        }
    
        qrcode.makeCode(elText.value);
    }
    
    makeCode();
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    通过调用blur和keydown来触发,,当脱离焦点点击的时候生成二维码,或者输入内容后按下回车键(Enter)生成

    $("#text").
        on("blur", function () {
            makeCode();
        }).
        on("keydown", function (e) {
            if (e.keyCode == 13) {
                makeCode();
            }
        });
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    实战小例子

    <!DOCTYPE html>
    <html>
    
      <head>
        <title>Demo</title>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />
        <!--引用本地脚本文件-->
        <script type="text/javascript" src="jquery.min.js"></script>
        <script type="text/javascript" src="qrcode.js"></script>
        <style>
          #qrcode {
            height: 300px;
             300px;
            background: #eee;
          }
    
          input {
            height: 25px;
            line-height: 25px;
             300px;
          }
    
        </style>
      </head>
    
      <body>
        <input id="text" type="text" value="这是一个测试文本,清除后输入您要生成的内容" />
        <div id="qrcode"></div>
    
    
    
    
    
    
    
    
    
    
        <!--脚本就是要放在后面.......-->
        <script type="text/javascript">
          var qrcode = new QRCode(document.getElementById("qrcode"), {
             300,
            height: 300,
            colorDark: "#000000",
            colorLight: "#03f594",
            correctLevel: QRCode.CorrectLevel.L
          });
    
          function makeCode() {
            var elText = document.getElementById("text");
    
            if (!elText.value) {
                alert("Input a text");
                elText.focus();
                return;
            }
    
            qrcode.makeCode(elText.value);
          }
    
          makeCode();
    
          $("#text").
          on("blur", function() {
            makeCode();
          }).
          on("keydown", function(e) {
            if (e.keyCode == 13) {
                makeCode();
            }
          });
    
        </script>
      </body>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76

    浏览器适配,支持下列

    PCMobile
    IE6~10 Mobile Safari
    Chrome Android
    Firefox Windows Mobile
    Safari  
    Opera  

    遵循协议

    MIT License

     
     原文作者:crper
    原文链接:http://blog.csdn.net/crper/article/details/45953037
  • 相关阅读:
    网络编程学习笔记:Socket编程
    C# url 路径转换 相对路径 转换为 绝对路径
    利用pycharm运行scrapy以及scrapy的配置
    基于scrapy的分布式爬虫抓取新浪微博个人信息和微博内容存入MySQL
    LeetCode 1. Two Sum
    【转载】C#异常Retry通用类
    【转载】WebDriver(C#)之十点使用心得
    c#值类型和引用类型
    percona5.7 源码安装
    android UI进阶之用ViewPager实现欢迎引导页面[转]
  • 原文地址:https://www.cnblogs.com/wucanlong/p/5437635.html
Copyright © 2011-2022 走看看