当点击事件处理器注册在 select
元素上时, 我发现浏览器上的行为非常不一致。 我设置了一个 < a href=>。 我设置了一个 < a href=> http://jsfidle.net/philo/ LaWGS/ >jsfidle demo 。 下面我看到的是 :
- Firefox 12 on OS X (10.7 Lion): Event fires when the element is clicked. The dropdown opens briefly, does not stay open. Keyboard actions don t generate click actions.
- Firefox 12 on Linux (Ubuntu Lucid): same
- Chome 19 on OS X: No mouse or keyboard interaction triggers the click event.
- Chrome 19 on Linux: First mouse click expands options, subsequent click on either the still-present select, or the options, triggers click event.
- Safari 5.1.6 on OS X: Similar to Chrome on Linux, first click expands options, subsequent click on options triggers click event (unlike Chrome, Safari hides the select element when showing options).
- Android Browser (on Ice Cream Sandwich): Initial click triggers event. Options stay visible after the event, and can be clicked. Clicking the options doesn t trigger another event.
- Chrome Beta for Android (Ice Cream Sandwich): Same as Android Browser.
如果有人能告诉我或者指给我标准,我会很高兴,但我想这并没有那么有用,因为我直接观察到没有人跟踪它。我怀疑这是一件不寻常的事情,试图这样做,也许更常见的是倾听改变事件。这是否属实?听点击选项的是什么?我无法做到这一点,但这可能是个愚蠢的错误。
(为了多给一点上下文, 我将替换一个基于 Google 关闭 s goog. ui. select
的选定元素, 因为该元素可以模仿一些桌面 < code> 选择 的图像, 特别是铬 s, 但无法在移动浏览器上完成扩展选项的全屏翻接。 应用程序先前监听了该组件 < code>goog. ui. component. EventType.ACtion 事件, 但它在任何地方都没有清晰的类比, 所以我只是想找到一个一致的替代选项 。)