我为自己的商店构建了一个小型网络应用程序数据库,通过条形码扫描仪跟踪我的库存和员工。
我已经完成了所有工作,但在我使用数据库搜索数字等之后,现在遇到了扫描仪输入框没有焦点的问题。
在单击任何不需要交互的内容(即不是输入框)后,我有一些预防措施,例如 $('#Barcode_box').focus();
以及如果鼠标按下则启动的计时器不活动这么多分钟/秒(不理想)。但这仍然不是万无一失的!
我知道网页上的 Flash 可以访问网络摄像头和麦克风,并且我知道如何调用 javascript 函数或让 java-s 从网页调用其函数。
但是我想知道条形码扫描仪有效地键入并返回(ascii 13)实际上有什么方法可以检测什么设备正在键入或向客户端计算机发送信号?
我尝试过谷歌搜索很多不同的东西,甚至对于任何可以直接监听Bcode扫描仪的com端口进行输入并直接发布到盒子的as3代码,但都无济于事。
非常感谢任何帮助。我正在考虑也许有一个 flash 击键监听器,但感觉这可能有点重。
哦,这是在运行 wamp 的内部网络上。
最佳答案
我现在能想到的最好的解决方案是jquery:
$("body").click(function(e) {
if($('input:not(#Barcode)').is(":focus")){}
else{
$('#Barcode').focus();}
});
经过几分钟测试后似乎工作正常......
编辑: 万一有人从 g 搜索中遇到此问题,代码会说:当用户单击任何内容时 -> 如果它不关注输入,则将焦点设置为条形码条目。
我也可以尝试按键监听器,只是为了双重确定!
关于jquery - Flash ActionScript 可以检测哪个设备正在打字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14087522/