假设我的HTML页面上有一个<select>
元素,并且我想在选择更改时运行一些Javascript。我正在使用jQuery。我有两种方法将代码与元素相关联。如何最好地将代码与jQuery中的事件相关联?
方法1: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>
方法2: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的集成更好吗?代码与事件的后期绑定是否会影响页面的行为?
你会选择哪一个?为什么?