method1
init で直接実行すると機能するのに、keyevent によってトリガーされた場合は機能しないのはなぜですか。32,39 キーイベントでは機能しませんが、キーイベント 37 では機能します。したがって、関数は機能するはずです。
init
関数も機能します。たとえば、method2
メソッドが実行されているときに init するとき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();