为什么method1
直接在 init 中有效,但在由 keyevent 触发时无效。在 32,39 keyevent 上它不起作用,但在 keyevent 37 上它起作用。因此,该功能应该可以工作。
init
函数也可以工作,例如当我 init 时method2
,而方法正在运行method1
。这行得通,但是为什么当keyevent
它不起作用时呢?
function myClass() {
this.method1 = function method1(word) {
alert(word)
}
this.method2 = function method2(word) {
this.method1(word);
}
this.shortcutKey = function shortcutKey() {
document.onkeydown = function (event) {
if (event.keyCode == 32 || event.keyCode == 39) {
this.method1("undirect");
} else if (event.keyCode == 37) {}
}
}
this.init = function init() {
this.method2("direct init");
this.shortcutKey();
}
this.init();
}
var object = new myClass();