假设我的<select>
HTML 页面上有一个元素,并且我想在选择更改时运行一些 Javascript。我正在使用 jQuery。我有两种方法可以将代码与元素相关联。
方法一:jQuery .change()
<select id='the_select'>
<option value='opt1'>One</option>
<option value='opt2'>Two</option>
</select>
<script>
$('#the_select').change(function() {
alert('Changed!');
});
</script>
方法二:onChange属性
<select id='the_select' onchange='selectChanged();'>
<option value='opt1'>One</option>
<option value='opt2'>Two</option>
</select>
<script>
function selectChanged() {
alert('Changed!');
}
</script>
我理解这里不同的模块化:例如,方法 1 将代码引用保留在 HTML 之外,但方法 2 不需要在代码中提及 HTML id。
我不明白的是:这两者之间是否存在操作差异,让我更喜欢其中一个?例如,是否存在其中一个工作而另一个不工作的边缘案例浏览器?与 jQuery 的集成是否更好?代码到事件的后期绑定是否会对页面的行为产生影响?
你选择哪个,为什么?