javascript – 为什么内联事件处理程序属性在现代语义HTML中是个坏主意?

前端之家收集整理的这篇文章主要介绍了javascript – 为什么内联事件处理程序属性在现代语义HTML中是个坏主意?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
内联事件处理程序被认为是一种不好的做法吗?

例如:< button onclick = someFunction()>点击我!< / button>

如果是这样,使用内联事件处理程序有什么缺点?

解决方法

这是一个坏主意,因为……

1)很长一段时间以来,人们一直明确强调内容,风格和剧本之间的明确区分.用JS混淆你的HTML并不符合这一点.

2)更重要的是,你对事件的控制要少得多.特别:

>你只能用DOM-zero事件(这是内联的事件)绑定每种类型的事件,所以你不能有两个点击事件处理程序
>如果事件是内联指定的,则JS被​​指定为字符串(属性值始终为字符串)并在事件触发时进行评估.评价是邪恶的.
>您将面临必须引用命名函数.这并不总是理想的(事件处理程序通常采用匿名函数)并且对需要全局的函数有影响

简而言之,通过专用的addEventListener API或jQuery等集中处理事件.

猜你在找的JavaScript相关文章