onchange事件是否传播?

我正在使用事件委托监听DOM中较低的事件,但是它不适用于select框上的onchange事件。 onchange事件是否会传播或冒泡DOM?

谷歌search没有find一个结论性的答案。

根据规范 ,“改变”,“提交”,“重置”应该是泡沫,“聚焦”和“模糊”不应该泡。

这个行为在IE浏览器的所有浏览器中都是正确的,除了IE9以外,也就是说,改变,提交,重置在IE> = 9的时候都会正确的冒泡。

请参阅https://stackoverflow.com/a/4722246/227299了解旧IE版本上的jQuery解决方法;

在所有的浏览器,包括IE浏览器jQuery 1.4 +更改事件泡沫。

$('div.field_container').change(function() { // code here runs in all browers, including IE. }); 

我有一段时间没有处理这个问题,但是最后一次,我记得Firefox识别了<SELECT>元素上的事件,而IE6只识别了<OPTION>标签上的事件。 就目前我所记得的。

当时IE7没有出来。

所以如果是这样的话,不要把事件处理程序内联写入,而是将其应用到DOM上,否则你将会有很多被污染的,重复的代码。

不知道如果我得到的问题,但如果你是这个意思,那么没有。

 <div id="foo"> <select onchange="alert('hi');"> <option>Hello</option> <option>World</option> </select> </foo> 

在哪里div id =“foo”会有一个onchange事件…从select列表冒泡?


在一个相关的说明,只是一个FYI你不能附加一个事件的select列表中的选项在IE浏览器(嗯,你可以,但不会触发)