当前位置: 首页 > 面试题库 >

Javascript:如何最好地阅读手持式条形码扫描仪?

李法
2023-03-14
问题内容

我希望能够通过手持扫描仪扫描条形码并使用Java处理结果。

条形码扫描仪的工作原理几乎就像键盘一样。它输出原始的扫描/翻译的(条形码->编号)数据(对吗?)。实际上,我只需要捕获输出并继续。但是如何?

这是我想做的一些伪代码:

$(document).on("scanButtonDown", "document", function(e) {
    // get scanned content
    var scannedProductId = this.getScannedContent();

    // get product 
    var product = getProductById(scannedProductId);

    // add productname to list
    $("#product_list").append("<li>" + product.name + "</li>");
});
  • 有什么想法(框架,插件,片段)吗?
  • 有条形码扫描仪(硬件)建议吗?

提前致谢!


问题答案:

您的伪代码将不起作用,因为您无权使用扫描程序来捕获诸如之类的事件scanButtonDown。您唯一的选择是HID扫描仪,其行为与键盘完全相同。要区分扫描仪输入和键盘输入,您有两个选择:基于计时器或基于前缀。

基于计时器

扫描程序输入字符的速度可能比用户使用键盘输入字符的速度要快得多。计算接收按键的速度,并将快速输入缓冲到变量中以传递给getProductsId函数。@Vitall写了一个可重用的jQuery解决方案,用于捕获条形码扫描器的输入,您只需要捕获onbarcodescanned事件即可。

基于前缀

可以将大多数扫描仪配置为所有扫描数据的前缀。您可以使用前缀开始拦截所有输入,并且一旦获得条形码,就停止拦截输入。

全面披露 :我是Socket Mobile,Inc.的顾问,该公司生产手持式扫描仪。



 类似资料:
  • 使用ML Kit的条码扫描API,您可以读取大多数使用标准条码格式编码的数据。 条形码是将信息从现实世界传递到应用程序的一种便捷方式。特别是,使用QR码等二维格式时,您可以编码结构化数据,如联系人信息或WiFi网络凭证。由于ML Kit可以自动识别和解析这些数据,因此当用户扫描条形码时,您的应用可以进行智能响应。 iOS Android 关键功能 阅读大多数标准格式 线性格式:Codabar,Co

  • 问题内容: 如何简单地在iPhone和/或iPad上扫描条形码? 问题答案: 我们为iPhone生产了“条形码”应用程序。它可以解码QR码。源代码可从zxing项目获得;具体来说,您想看看iPhone客户端和核心库的部分C ++端口 。该端口从Java代码的0.9发行版开始有点过时了,但仍然可以正常使用。 如果您需要扫描其他格式(例如1D格式),则可以继续将该项目中的Java代码移植到C ++。

  • 问题内容: 有人可以告诉我创建条形码扫描器应用程序(对于Android)是否困难?OpenCV库是一个好的开始吗?在哪里可以找到清楚说明如何读取条形码的算法?我将感谢有关该主题的所有优秀材料! 提前致谢! 问题答案: ZXing项目提供了一个独立的条形码读取器应用程序-通过Android的意图机制-希望集成条形码扫描的其他应用程序可以调用该应用程序。 最简单的方法是从应用程序中调用ZXing SC

  • 我正在为平板电脑开发一个android应用程序(SynchroDigital iNOSP10-4.0 RES型号),我想使用ZXing库扫描包含字符串的QRcode。它会在我需要时启动扫描仪,但我无法扫描任何东西。 实际上,如果我直接使用条形码扫描仪应用程序,它甚至不起作用,黄色的点出现了,但什么也没有发生,无论亮度、距离或二维码的复杂性(尝试使用一个只包含字母“a”的巨大二维码),它都不会起作用

  • 我有一个物理条形码扫描仪插入我的设备,我试图使用它扫描条形码太小,相机无法聚焦。 在我的活动中,这些是我用来检查按键的2个函数,因为我假设它是作为硬件键盘处理的。 什么能让它通过? 提前致谢

  • 我需要阅读申请的条形码。我正在使用触发器条形码扫描仪。通讯是通过USB。 如你所知,条形码扫描仪的工作方式就像键盘一样。当设备读取条形码时,它试图将该值写入具有焦点的输入。用户按下触发器,条形码扫描器工作,直到条形码读取成功。然后它就会进入待机模式。理想的方式读取大量条形码。 在xml端添加了上面的行。 它检测EditText何时失去焦点。但我不能把它分配回来。我确保EditText在触摸模式下是