通过传递 document.createElement 生成二维码不起作用

Generating Qr Code by passing document.createElement doesn't work

我正在做一个生成随机二维码的项目。这是我正在使用的插件 http://davidshimjs.github.io/qrcodejs/

function createQrImage(qrValue){

    //option1
    var newDiv = document.createElement("div");

    //option2
    var qrDiv = document.getElementById("myDivId");

    //only option 2 works
    var qrcode = new QRCode(qrDiv);

    qrcode.makeCode(qrValue)
}

使用选项 2 创建新的 QR 码工作正常,但如果我传递选项 1 变量,则不会生成 QR 码。控制台也没有错误。

根据我的评论,由于 newDiv 未添加到 DOM 任何地方,因此引用它不会影响输出。所以你需要在使用它之前将它附加到正文中。

function createQrImage(qrValue){

    //option1
    var newDiv = document.createElement("div");
    document.body.appendChild(newDiv);

    //option2
    var qrDiv = document.getElementById("myDivId");

    //only option 2 works
    var qrcode = new QRCode(qrDiv);

    qrcode.makeCode(qrValue)
}