Jquery 捕获原型函数中的关键代码
我试图在我的原型函数中捕捉击键 这是我的密码:Jquery 捕获原型函数中的关键代码,jquery,keystroke,Jquery,Keystroke,我试图在我的原型函数中捕捉击键 这是我的密码: function txtBox(input) // pass textbox { this.id = "myTextbox"; this.txt = input } txtBox.prototype.init = function() { this.txt.bind("keyup",this.keyup); } txtBox.prototype.keyup= function(event) { alert("
function txtBox(input) // pass textbox
{
this.id = "myTextbox";
this.txt = input
}
txtBox.prototype.init = function()
{
this.txt.bind("keyup",this.keyup);
}
txtBox.prototype.keyup= function(event)
{
alert("keycode: event.keyCode);
alert(this.id);
}
var myTxt = new txtBox($(#txt)); // create object
myTxt.init();
捕获工作正常,但问题是keyup
触发“在”我的对象之外,这意味着this.id
返回“undefined”,即使它已定义
有人知道如何与此保持一致吗?我尝试将您的代码复制粘贴到我的firebug中,并在此页面上运行它(不过将警报更改为console.log)。它似乎工作得很好。它捕获我选择的文本字段中的每个向下键,但不捕获其他任何地方。我看到两个问题,假设您的脚本中有一个名为“txt”的实际标记:
<input type="text" id="txt"/>
到
这也需要改变
new txtBox($(#txt));
到
它会提醒你的文本框名称,我不相信IE,你将能够以你试图改变它的方式来改变它,做this.id=“textbox”
alert("keycode": event.keyCode);
new txtBox($(#txt));
new txtBox($('#txt'));