te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>javascript - Select back camera on html5-qrcode.min.js - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Select back camera on html5-qrcode.min.js - Stack Overflow

programmeradmin3浏览0评论

I use this qr code scanner:

I use this code to scan qr code:

         function onScanSuccess(decodedText, decodedResult) {
  // handle the scanned code as you like, for example:
  document.getElementById('text').value = decodedText;
  console.log(`Code matched = ${decodedText}`, decodedResult);
}

function onScanFailure(error) {
  // handle scan failure, usually better to ignore and keep scanning.
  // for example:
  console.warn(`Code scan error = ${error}`);
}

let html5QrcodeScanner = new Html5QrcodeScanner(
    "reader", { fps: 10, qrbox: 250 }, /* verbose= */ false);
html5QrcodeScanner.render(onScanSuccess, onScanFailure);

It is possible to set default camera to back smartfone camera. I want to run scanner with setted back camera on startup. Thanks, for some help.

I use this qr code scanner: https://github./mebjas/html5-qrcode

I use this code to scan qr code:

         function onScanSuccess(decodedText, decodedResult) {
  // handle the scanned code as you like, for example:
  document.getElementById('text').value = decodedText;
  console.log(`Code matched = ${decodedText}`, decodedResult);
}

function onScanFailure(error) {
  // handle scan failure, usually better to ignore and keep scanning.
  // for example:
  console.warn(`Code scan error = ${error}`);
}

let html5QrcodeScanner = new Html5QrcodeScanner(
    "reader", { fps: 10, qrbox: 250 }, /* verbose= */ false);
html5QrcodeScanner.render(onScanSuccess, onScanFailure);

It is possible to set default camera to back smartfone camera. I want to run scanner with setted back camera on startup. Thanks, for some help.

Share Improve this question asked Aug 17, 2021 at 6:45 MariuszMariusz 651 gold badge1 silver badge6 bronze badges 4
  • you'll probably need to use navigator.mediaDevices.enumerateDevices – Bravo Commented Aug 17, 2021 at 6:48
  • How to use that ? – Mariusz Commented Aug 17, 2021 at 7:04
  • Does this answer your question? Accessing device camera using javascript – Dhana D. Commented Aug 17, 2021 at 7:20
  • Did you notice it was a link to documentation, and in that documentation there are examples and other very helpful links to all the information you could ever want to research – Bravo Commented Aug 17, 2021 at 7:35
Add a ment  | 

3 Answers 3

Reset to default 6

I acplish it using this bit of code when I launch the scanner:

facingMode: { exact: "environment"}

Maybe this will help point you in the right direction. Below is the way the setting is used when I launch the scanner:

    /** load scanner using back camera **/
    html5QrCode.start({ facingMode: { exact: "environment"} }, config, qrCodeSuccessCallback);
const scanner = new Html5QrcodeScanner('reader', {
                qrbox: {
                    width: 200,
                    height: 200,
                },
                fps: 5,
                videoConstraints: {
                    facingMode: { exact: "environment" },
                },
            },
            false)
        scanner.render(success, error);

There is no config for this. But I did manage to find the id of the select element.

And here's a dirty workaround to remove all "front" cameras and leave the back ones. So that the user will always default to a back facing camera.

//remove front cameras
setInterval(() => {
    const selectElement = document.getElementById('html5-qrcode-select-camera');
    if (selectElement) {
        document.querySelectorAll("#html5-qrcode-select-camera option").forEach(option => {
            if (option.textContent.includes("front")) {
                option.remove();
            }
        });
        selectElement.selectedIndex = 0; 
        clearInterval(this);
    }
}, 1000);
发布评论

评论列表(0)

  1. 暂无评论