我想检测用户是否按下了EnterjQuery.
这怎么可能?它需要插件吗?
编辑:看起来我需要使用该keypress()方法.
我想知道是否有人知道该命令是否存在浏览器问题 - 比如我是否应该了解任何浏览器兼容性问题?
模拟用户在JS和/或jQuery的文本输入框中输入文本的最佳方法是什么?
我不希望居然把文本输入框,我只是想触发所有的事件处理程序,通常会得到用户输入信息到一个输入框触发.这意味着焦点,keydown,按键,键盘和模糊.我认为.
那么如何实现这一目标呢?
我需要在按下回车键时执行按钮点击事件.
因为目前事件没有解雇.
如果可能的话,请帮我解释一下语法.
$(document).on("click", "input[name='butAssignProd']", function () {
//all the action
});
Run Code Online (Sandbox Code Playgroud)
这是我尝试在输入时触发click事件.
$("#txtSearchProdAssign").keydown(function (e) {
if (e.keyCode == 13) {
$('input[name = butAssignProd]').click();
}
});
Run Code Online (Sandbox Code Playgroud) 我读过jQuery Event Keypress:按下了哪个键?和我如何检查与jQuery单击事件过程中按下键?
但是我的问题是,如果你能为所有浏览器获得相同的关键事件?目前我知道Firefox给command按钮(Mac)代码224,而Chrome和Safari给它91值.是最好的方法来简单地检查用户正在使用什么浏览器并基于按下的键或是否有办法我可以在所有浏览器中获得1个关键代码吗?注意我得到的值是:
var code = (evt.keyCode ? evt.keyCode : evt.which);
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我很想不使用插件只是因为我只需要知道按下的command/ ctrl(windows系统)键.
我只有1个输入字段,我想注册onChange和onKeyPress事件来检测用户何时完成输入或按Enter键.我只需要使用javascript.谢谢您的帮助.
我有:
var load = function (){
//I want to trigger this function when user hit Enter key.
}
document.getElementById('co').onchange=load; //works great
document.getElementById('co').onKeyPress=load;
//not sure how to detect when user press Enter
Run Code Online (Sandbox Code Playgroud)
HTML
//no form just a single input field
<input type='text' id='co'>
Run Code Online (Sandbox Code Playgroud) 在我的三星Galaxy标签4(Android 4.4.2,Chrome:49.0.2623.105)上,我遇到了keyCode始终为229的情况.
我为两种情况设置了一个简单的测试
<div contenteditable="true"></div>
<input>
<span id="keycode"></span>
Run Code Online (Sandbox Code Playgroud)
脚本:
$('div, input').on('keydown', function (e) {
$('#keycode').html(e.keyCode);
});
Run Code Online (Sandbox Code Playgroud)
幸运的是,我可以找到关于此的帖子,但我找不到一个有效的解决方案.有人建议改为使用keyup或使用该textInput事件,但只会触发该事件blur.
现在,最重要的是,默认股票浏览器不会发生这种情况:(
任何帮助,将不胜感激!
更新:如果事实证明这是不可能的,我仍然可以在插入符号之前抓取字符:post
如何将字符转换为其各自的键码?
例如:
a 至 65b 至 66c 至 67d 至 68当<div contenteditable="true"> </div>在Firefox中按下输入时<br />产生 - 这没关系.但在Chrome或IE中新增<div>或<p>创建.我应该怎么做才能使Chrome和IE的行为像Firefox一样.
在Firefox 3.5中测试JavaScript时,我可以访问常量,例如KeyEvent.DOM_VK_D但不能访问Google Chrome.是否有跨浏览器访问这些常量的方法?
我正在尝试以下代码space-bar在输入框中按下时触发js方法.
<input id="j1" />
$('#j1').keypress (function (event){
alert(event.keycode)
});
Run Code Online (Sandbox Code Playgroud)
在firefox中,只有在enter按下时才会返回正确的值,其他键返回的值每次只有0.在IE/chrome中,这非常有效.
javascript ×9
jquery ×6
dom-events ×2
android ×1
command ×1
enter ×1
events ×1
html ×1
key-events ×1
keycode ×1
keydown ×1
keyevent ×1
keypress ×1
onkeyup ×1