1

所以我可以选择使用下面的 2 个实现来跟踪单击了哪个 li 元素。第一个只是一个

选项1:

var ul = document.getElementById('inputField');
ul.onkeyup= function (event) {
    var target = getEventTarget(event);
    var userInput = target.value;
    alert(userInput );
};

选项 2:

<input id="inputField" onkeyup="alert(userInput)" />

我知道在上述情况下,较短的更有吸引力。但是,如果我打算使用多个输入字段,选项 1 更有吸引力,因为我不必为每个输入字段的每个属性都编写代码。我的问题是......有没有一种方法不适合另一种方法?

4

1 回答 1

5

两者都同样糟糕,并且不受欢迎(就像使用 jQuery 一样)。使用addEventListener.

ul.addEventListener("keyup", function () {
    // callback
});

如果您想与旧版浏览器兼容,请添加一个用于检查的包装器,addEventListener并回退到attachEvent.

于 2013-09-16T15:40:51.747 回答