0

当用户单击一个选择控件来选择一个选项时,是否会同时触发onclickonselect事件?如果是这样,按什么顺序?它依赖于浏览器吗?

4

3 回答 3

3

select事件并没有按照您的想法进行。当您在文本框或文本区域中选择文本时会触发它。单击选择元素时触发的事件是:

  1. 鼠标按下
  2. 焦点(如果选择元素还没有焦点)
  3. mouseup
  4. 点击

当您通过单击选择列表中的项目来更改所选值时,将change触发该事件。在 IE 中,每次使用键盘更改突出显示的项目时也会触发此事件。在 Firefox 和 Chrome 中,您必须按“回车”键才能触发change.

于 2009-12-28T04:44:52.383 回答
1

应该相当容易测试:

<select onclick="alert('click');" onselect="alert('select');"><option>A</option><option>B</option></select>
于 2009-12-28T04:36:38.507 回答
0

它应该是:

  • 鼠标按下
  • mouseup
  • 点击
  • 选择

但我不确定非标准浏览器(IE)是否总是符合这一点。如果有疑问,请使用一堆事件侦听器对其进行测试。

于 2009-12-28T04:39:04.817 回答