何时应该使用 on* DOM 属性与 on* HTML 属性
When should I use on* DOM properties vs on* HTML attributes?
所以我可以选择使用下面的 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 更具吸引力,因为我不必为每个输入字段的每个属性编写代码。 我的问题是... 有没有一种方法比另一种方法皱眉?
两者都同样糟糕,并且不受欢迎(就像使用jQuery一样)。使用addEventListener
.
ul.addEventListener("keyup", function () {
// callback
});
如果您想与较旧的浏览器兼容,请添加一个包装器,该包装器检查addEventListener
并回退到attachEvent
。
相关文章:
- CSS中的游标属性似乎不适用于USB On The Go
- jQuery on change don't返回属性值
- 找不到属性'link_to'on对象(生成的应用程序控制器)
- jQuery在animate on click事件后增加css属性的值
- 将必需属性添加到DIV On单选按钮更改中的输入
- 对动态加载的内容使用.on()时,是否可以从元素中获取属性
- Javascript:从Ruby on Rails生成的按钮访问“action”属性
- D3 无法读取未定义的属性“on”
- 通过 jquery .on() 函数将单击元素的属性值传递给外部函数
- DOM 元素属性未定义 - jquery / ruby on rails.
- 节点:类型错误:无法读取未定义的属性“on”
- SCRIPT438:对象不支持属性或方法“on”
- 节点.js无法读取未定义的属性“on”
- Ajax 和 JS on select_taf;语法错误:属性列表后缺少 }
- 何时应该使用 on* DOM 属性与 on* HTML 属性
- 如何在更改模型属性时为AngularJS创建on change指令
- 从HTML标记中删除on*JS事件属性
- 将$.validator.setDefaults({onkeyup:false})放在何处以禁用远程属性的MVC3 on
- Ng-Grid:不能读取属性'on'零
- js -未捕获类型错误:不能读取属性'on'的定义