我有一个<select>,它希望响应click事件(使用javascript)。在MacOS Chrome上,单击时不会触发任何事件。这是一个已知的问题(例如1、2、…)
示例
<select id='hodor'>
<option>Jon Snow</option>
<option>Joffrey</option>
</select>和
$('#hodor').on('click change', function (e) {
$(this).after("<li>"+e.type+"</li>");
});我已经知道我可以使用change 事件(我已经使用过了)。但是,对于最终用户来说,行为是不同的,我需要使它准确地工作:一旦单击了选择,我希望我的UI能够做一些事情--不仅仅是在所选选项被更改时。
我有什么选择?
请注意:这不是一个重复的其他问题,允许“使用change事件”的答案。这不是我要问的。
发布于 2013-07-15 15:28:53
使用mousedown事件:
$('#hodor').on('mousedown', function (e) {
$(this).after("<li>"+e.type+" " + $("option:selected", this).val() + "</li>");
});注意,这会在用户选择菜单中的另一个选项之前触发-- .val()返回当前值。我试过使用mouseup,但没有成功。
小提琴
https://stackoverflow.com/questions/17657808
复制相似问题