我试图让Enter键在某个文本框内按下时触发一个函数,而不是触发第一个或默认按钮.
你可以看到这里发生的事情的一个例子:http://jsfiddle.net/cutsomeat/WZ6TM/1/
如果按其他键,您将收到一个带有键码的警告框,但是如果您按下Enter键,您将无法获得带有键码的警告框,而是按钮点击事件中的警告框.
显然,Enter键是触发按钮.有没有办法避免这种情况,而是在keyup事件中捕获Enter键,然后触发另一个函数?
当用户使用javascript键入时,我想将小写字母转换为大写.欢迎任何建议.
我尝试过以下方法:
$("#textbox").live('keypress', function (e) {
if (e.which >= 97 && e.which <= 122) {
var newKey = e.which - 32;
// I have tried setting those
e.keyCode = newKey;
e.charCode = newKey;
}
});
Run Code Online (Sandbox Code Playgroud) 我需要在我的网站上检测自定义搜索框的密钥代码,但在Chrome for Android上密钥代码总是返回零(退格区除外,返回8).有没有其他人经历过这一点,你是如何解决它的?我们的网站适用于除Chrome for Android以外的所有移动浏览器,因为我们无法检测到非零键码或字码.
我在Android 4.1.2 Jelly Bean上运行Chrome 27.0.1453.90.这个问题可以通过以下简单方法重复:
alert(event.keyCode);
我在尝试这个:
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
<input type="text" placeholder="some text" class="search" onkeydown="search()"/>
Run Code Online (Sandbox Code Playgroud)
使用一些javascript来检查是否按下了回车键:
function search() {
if(event.keyCode == 13) {
alert("should get the innerHTML or text value here);
}
}
Run Code Online (Sandbox Code Playgroud)
这个目前工作得很好,但是我的问题是如何在文本字段中获取值,我正在考虑将一个引用"this"传递给函数,或者如果它们有id,那么我可以使用ID但是我不会看看我如何区分输入哪一个,再次回到同一个问题......
我需要一个函数,给定一个字符,返回CGKeyCode与当前键盘布局上该字符的位置相关联的函数.例如,给定"b",kVK_ANSI_B如果使用US QWERTY,或者kVK_ANSI_N使用Dvorak ,它应该返回.
Win32 API具有VkKeyScan()用于此目的的功能; X11具有此功能XStringToKeySym().CG API中有这样的功能吗?
我需要这个来传递参数CGEventCreateKeyboardEvent().我尝试使用CGEventKeyboardSetUnicodeString(),但显然不支持修饰符标志(我需要).
我已经广泛搜索了这个但是找不到合适的答案.目前我正在使用以下代码(在线发现),它有效,但不是很优雅(而且很难解释如何简化),我宁愿不在生产代码中使用它:
#include <stdint.h>
#include <stdio.h>
#include <ApplicationServices/ApplicationServices.h>
CGKeyCode keyCodeForCharWithLayout(const char c,
const UCKeyboardLayout *uchrHeader);
CGKeyCode keyCodeForChar(const char c)
{
CFDataRef currentLayoutData;
TISInputSourceRef currentKeyboard = TISCopyCurrentKeyboardInputSource();
if (currentKeyboard == NULL) {
fputs("Could not find keyboard layout\n", stderr);
return UINT16_MAX;
}
currentLayoutData = TISGetInputSourceProperty(currentKeyboard,
kTISPropertyUnicodeKeyLayoutData);
CFRelease(currentKeyboard);
if (currentLayoutData == NULL) {
fputs("Could not find layout data\n", …Run Code Online (Sandbox Code Playgroud) 我在这里发现了以下JQuery函数,它阻止用户输入任何不是数字或单个小数的内容.该功能运行良好但我想改进它以防止用户输入3个或更多小数位,即禁止99.999并允许99.99.有任何想法吗?
function checkForInvalidCharacters(event, inputBox){
if ((event.which != 46 || inputBox.val().indexOf('.') != -1) && (event.which < 48 || event.which > 57)) {
event.preventDefault();
}
};
Run Code Online (Sandbox Code Playgroud) 我正在jquery中编写一个函数,如果按下Ctrl+ R就会执行,但我似乎无法找出左右ctrl键代码是什么...有人可以帮忙吗?
UPDATE
///this works
$(document).keydown(function(e){
if(e.keyCode==17){alert("control was pressed")};
});
Run Code Online (Sandbox Code Playgroud)
下一个问题 - 如何链接控制键按下和另一个按键以执行功能?
if(e.keyCode==17){llCtrlPress=1};
if(e.keyCode==97 && llCtrlPress=1){DO SOMETHING}
????????????
Run Code Online (Sandbox Code Playgroud)
这似乎可以正常工作但是如何在keyup上将llCtrlpress设置回'0'?
我试图控制后退按钮,但我不能.在这里;
event.keyCode == 27 //thats for escape
event.keyCode == 8 //thats for backspace..its also working on browser but it doesnt work on my tablet.
Run Code Online (Sandbox Code Playgroud)
有什么建议??
我正在尝试将虚拟键码映射到char.
我的代码使用ProcessCmdKey来监听WM_KEYDOWN,这使我可以访问按下的键.例如,当我按单引号时,我得到一个222的密钥,我希望它映射到keychar 39代表...你猜对了......单引号.
我的开发上下文是: - .net Framework 2.0 - UserControl放置在很多地方
你知道问题的答案吗?
在我,KeyDown EventHandler我需要知道什么是KeyCode","和".".
我找不到他们,这就是我要问的原因.谢谢!