我想在我input文本框中停止键入(而不是在键入)字符后立即触发一个事件。 我试过: $('input#username').keypress(function() { var _this = $(this); // copy of this object for further usage setTimeout(function() { $.post('/ajax/fetch', { type: 'username', value: _this.val() }, function(data) { if(!data.success) { // continue working } else { // throw an error } }, 'json'); }, 3000); }); 但是这个例子为每个input的字符都产生一个超时,如果input20个字符,我会得到大约20个AJAX请求。 在这个小提琴,我演示了一个简单的警报,而不是一个AJAX相同的问题。 有没有这样的解决scheme,或者我只是用一个坏的方法呢?
你如何捕获按键或关键事件的DIV元素(使用jQuery)? 要求DIV元素的重点是什么?
当使用jQuery文档中的keypress事件处理程序的示例代码时,我无法捕获Delete键。 在FireFox中按下Delete键时,下面的代码将会logging0 : $(document).keypress(function(e) { console.log(e.which); }); 似乎有一个方法来捕获删除键,但这是一个模棱两可的术语,所以谷歌没有certificate是多less帮助。
我正在寻找一种快速的方法来在Selenium中键入和input或返回键。 不幸的是我试图testing的forms(不是我自己的代码,所以我不能修改)没有提交button。 当手动使用它时,我只需inputENTER或RETURN 。 我需要知道如何使用Selenium type命令,因为没有button可以点击。
在这种特殊情况下,当我按Enter键时,有什么选项可以使这些input调用一个函数? // HTML view // <form> <input type="text" ng-model="name" <!– Press ENTER and call myFunc –> /> <br /> <input type="text" ng-model="email" <!– Press ENTER and call myFunc –> /> </form> // Controller // .controller('mycontroller', ['$scope',function($scope) { $scope.name = ''; $scope.email = ''; // Function to be called when pressing ENTER $scope.myFunc = function() { […]
我不知道我在做什么错: $('.s').keypress(function(e) { switch (e.keyCode) { case 8: // Backspace //console.log('backspace'); case 9: // Tab case 13: // Enter case 37: // Left case 38: // Up case 39: // Right case 40: // Down break; default: doSearch(); } }); 我想要我的doSearch()函数也被触发,当我点击退格键。 目前在Chrome和Safari中按Backspace时绝对没有任何反应。 有任何想法吗?
我想暂停我的R脚本,直到用户按下一个键。 我如何做到这一点?
可能重复: jquery:如何检测文本框的内容已经改变 我想要检测用户的键盘动作何时改变文本字段的值。 它应该在现代浏览器中一致工作。 .keypress事件的JQuery页面显示它不一致? 另外,它不适用于退格,删除等。 我不能使用.keydown,因为它反应了shift,alt和方向键等等。另外,当用户按住一个键并插入多个字符时,它不会多次触发。 有没有一个简洁的方法我错过了? 还是应该使用.keydown并过滤掉由箭头键触发的事件,轮class等? 我主要担心的是会有我不知道应该被过滤的键。 (我几乎忘了ALT和CTRL,我想可能有其他人)但是,那么我将如何检测按住键并插入多个字符? 作为奖励,它会检测粘贴(包括右键单击)的变化,但我从这里有解决scheme。
在定义触发按键jQuery线程没有工作JSFiddle的答案,并在那里的代码不适合我。 $("button").click(function () { $("input").focus(); var e = jQuery.Event("keydown"); e.which = 77; // # Some key code value $("input").trigger(e); }) 有我的代码,这是我的小提琴http://jsfiddle.net/Z8adb/ 点击后,M应该出现在input中,因为input被赋予了焦点并且具有触发了keyCode为77(“m”)的keydown。 有任何想法吗? 编辑:我真正的目的是为了在一个崇高的video触发一个“M”热键,以video程序静音。 这是我的第一步,以确保我正确射击“m”键,这是我在堆栈溢出的帮助下。 不过,我仍然无法获得一个事件在video上以编程方式触发。 我认为这只是Sublime Video的一个问题,但我不确定,任何人对强制按键和点击的看法都很棒。
在input框或contenteditable =真正div,如何修改字母“a”的按键返回字母“b”的键击? 也就是说,每次在div中input字母“a”时,输出实际上是字母“b”。 我并不担心在IE中可以使用的解决scheme – 只能在Safari,Chrome和FF上运行。 在Chrome中,我可以看到按键事件具有属性“charCode”,“keyCode”和“which”,所有这些都被分配了按键事件编号。 如果我在一个按键上触发一个事件,我可以修改这些值,但我不知道要返回什么,以便键入的实际键是不同的。 例如: $(window).keypress(function(e){ //$(window) is a jQuery object e.charCode = 102; e.which = 102; e.keyCode = 102; console.log(e); return e; }); 我还可以看到,charCode和keyCode还有一个“originalEvent”属性,它又具有这些属性。 但是,我一直无法修改这些(我尝试了像e.originalEvent.charCode = 102)。