Trigger click on select box on hover
Solution 1:
I finally got this to work! You need Chosen; as others have pointed out, you can't do this with a normal select
because there are no events available to use. But this will pop open the menu when you mouseover the select
and close it when you mouseout, which is the exact effect I wanted.
HTML:
<select id="dropdown" data-placeholder="Choose…">
<option value="one">Option 1</option>
<option value="two">Option 2</option>
<option value="three">Option 3</option>
</select>
JS:
$("#dropdown").chosen().next(".chzn-container").hover(
function(){
$("#dropdown").trigger("liszt:open");
},
function(){
$(this).trigger("click");
}
);
$("#dropdown").trigger("liszt:open");
is what opens the menu. There is no equivalent liszt:close
event to trigger when you want to close it (as far as I know), but triggering a click
on it instead has the same effect.
Solution 2:
It's been a while but there is a solution I don't see here, using hover
to change the length of select
:
$('select').hover(function() {
$(this).attr('size', $('option').length);
}, function() {
$(this).attr('size', 1);
});
http://codepen.io/anon/pen/avdavQ
And here's a pen where it's a bit more than the bare necessity and has some styling :
Demo